Nếu bạn đang sử dụng WriteConcern.ACKNOWLEDGED
(mà tôi nghĩ cũng SAFE
) bạn không cần làm ô nhiễm mã của mình với việc kiểm tra lỗi.
Đối với ACKNOWLEDGED
, trình điều khiển sẽ tự động đưa ra một getLastError
tự động ra lệnh và đưa ra một ngoại lệ nếu có gì sai, ví dụ như vi phạm chỉ mục trùng lặp.
Bắt đầu từ phiên bản v2.10 của Trình điều khiển Java, Ghi quan tâm mặc định là ACKNOWLEDGED
CHỈNH SỬA
Bạn không nên làm điều này, nhưng trong mọi trường hợp:
insert
phương thức thực sự trả về WriteResult
. Nếu đó là getError()
là null
, mọi thứ đều ổn, nếu không nó trả về một cái gì đó chẳng hạn như E11000 duplicate key error index:...
. Để điều này hoạt động, bạn sẽ phải sử dụng WriteConcern.UNACKNOWLEDGED