
MongoDBDriverWriteResult::getInsertedCount 메서드는 WriteResult 객체에서 데이터가 성공적으로 삽입된 경우에만 반환됩니다.
getInsertedCount 메서드는 insertOne, insertMany 메서드 호출 시 삽입된 문서의 개수와 일치하는 경우가 많지만, 항상 일치하는 것은 아닙니다.
예를 들어, insertOne 메서드를 호출했을 때, 데이터가 성공적으로 삽입되었지만, getInsertedCount 메서드는 0을 반환할 수 있습니다.
이러한 경우는 다음과 같습니다.
- 데이터가 이미 존재하는 경우
- 데이터가 유효하지 않은 경우
- 데이터가 유효한 형식이 아닌 경우
insertMany 메서드를 호출했을 때, getInsertedCount 메서드는 삽입된 문서의 개수보다 적은 값을 반환할 수 있습니다.
이러한 경우는 다음과 같습니다.
- 일부 데이터가 유효하지 않은 경우
- 일부 데이터가 유효한 형식이 아닌 경우
따라서, getInsertedCount 메서드를 사용하여 데이터가 성공적으로 삽입되었는지 확인하고, 삽입된 데이터의 개수를 반환받으려면, WriteResult 객체의 getInsertedCount 메서드를 호출하기 전에 WriteResult 객체의 isAcknowledged 메서드를 호출하여 데이터가 성공적으로 삽입되었는지 확인하는 것이 좋습니다.
예를 들어, 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
java
WriteResult result = collection.insertOne(document);
if (result.getInsertedCount() > 0 && result.isAcknowledged()) {
System.out.println("데이터가 성공적으로 삽입되었습니다.");
} else {
System.out.println("데이터가 삽입되지 않았습니다.");
}
또한, getInsertedCount 메서드는 WriteResult 객체의 getInsertedIds 메서드와 함께 사용할 수 있습니다.
getInsertedIds 메서드는 삽입된 문서의 ID를 반환하는 메서드입니다.
예를 들어, 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
java
WriteResult result = collection.insertOne(document);
if (result.getInsertedCount() > 0 && result.isAcknowledged()) {
System.out.println("데이터가 성공적으로 삽입되었습니다.");
System.out.println("삽입된 문서의 ID: " + result.getInsertedIds());
} else {
System.out.println("데이터가 삽입되지 않았습니다.");
}
2025-06-05 11:43