Ако използвате WriteConcern.ACKNOWLEDGED
(което според мен също е SAFE
) не е нужно да замърсявате кода си с проверка на грешки.
За ACKNOWLEDGED
, драйверът автоматично ще издаде getLastError
команда автоматично и предизвиква изключение, ако нещо се обърка, например нарушение на дублиран индекс.
Започвайки от v2.10 на Java драйвера, проблемът за запис по подразбиране е ACKNOWLEDGED
РЕДАКТИРАНЕ
Не трябва да правите това, но във всеки случай:
insert
методът наистина връща WriteResult
. Ако е getError()
е null
, всичко е наред, в противен случай връща нещо като E11000 duplicate key error index:...
. За да работи това, ще трябва да използвате WriteConcern.UNACKNOWLEDGED