Bạn cần xem " WriteConcern ", nó có tất cả các hành vi bạn cần.
Bạn có thể sử dụng nó mỗi lần viết như thế này:
coll.insert(dbObj, WriteConcern.SAFE);
Nếu bạn sử dụng WriteConcern.SAFE thì thao tác của bạn sẽ đợi xác nhận từ máy chủ chính, vì vậy nếu không có ngoại lệ nào được nêu ra thì bạn vẫn ổn.
Hoặc bạn có thể đặt hành vi mặc định cho tất cả các thao tác ghi khi bạn đang tạo MongoClient:
MongoClientOptions.Builder builder = new MongoClientOptions.Builder();
builder.writeConcern(WriteConcern.JOURNAL_SAFE);
MongoClient mongoClient = new MongoClient(
new ServerAddress("localhost"), builder.build());
[Dựa trên nhận xét của Colin Morelli] Nếu bạn không sử dụng WriteConcern tạo ra ngoại lệ, bạn có thể sử dụng WriteResult.getLastError () để xác định xem nó có thành công hay không. Tương tự, nếu bạn sử dụng WriteConcern.SAFE và việc ghi thành công, WriteResult sẽ có thông tin hữu ích về nó, chẳng hạn như số lượng bản ghi đã được ghi.
Tại đây, bạn có thể đọc về WriteConcern trong chung .