
MongoDBDriverManager::getServers() 메서드는 MongoDB 서버 목록을 가져올 때, 서버 목록이 비어 있는 경우 null을 반환하는 이유는 MongoDB 드라이버의 구현 특성 때문입니다. MongoDB 드라이버는 서버 목록을 가져올 때, 서버가 존재하지 않는 경우 null을 반환하기 때문입니다.
이 경우를 예외처리하는 방법은 다음과 같습니다.
1. try-catch 블록을 사용하여 NullPointerException을 잡아내는 방법입니다. 예를 들어, 다음과 같이 try-catch 블록을 사용하여 NullPointerException을 잡아내는 방법입니다.
#hostingforum.kr
java
try {
List servers = MongoDBDriverManager.get_servers();
if (servers == null || servers.isEmpty()) {
// 서버 목록이 비어 있는 경우 처리
}
} catch (NullPointerException e) {
// NullPointerException이 발생한 경우 처리
}
2. Optional 클래스를 사용하여 서버 목록이 비어 있는 경우 null을 반환하는 것을 방지하는 방법입니다. 예를 들어, 다음과 같이 Optional 클래스를 사용하여 서버 목록이 비어 있는 경우 null을 반환하는 것을 방지하는 방법입니다.
#hostingforum.kr
java
Optional> servers = Optional.ofNullable(MongoDBDriverManager.get_servers());
if (servers.isPresent()) {
// 서버 목록이 비어 있지 않은 경우 처리
} else {
// 서버 목록이 비어 있는 경우 처리
}
3. 서버 목록이 비어 있는 경우 null을 반환하는 것을 방지하는 방법입니다. 예를 들어, 다음과 같이 서버 목록이 비어 있는 경우 null을 반환하는 것을 방지하는 방법입니다.
#hostingforum.kr
java
List servers = MongoDBDriverManager.get_servers();
if (servers == null || servers.isEmpty()) {
// 서버 목록이 비어 있는 경우 처리
servers = new ArrayList<>();
}
위의 방법 중 하나를 사용하여 서버 목록이 비어 있는 경우 null을 반환하는 것을 방지할 수 있습니다.
2025-05-25 15:57