我认为WriteResult.getLastError()应该返回null,如果删除
操作成功。
它返回以下内容
{ "n" : 1 , "connectionId" : 200 , "wtime" : 0 , "err" : null , "ok" : 1.0} 已成功删除BatchData Document,但getLastError()不是null。
如果删除不成功,我应该如何在下面的代码片段中编写代码:
try {
Query<BatchData> queryDeleteBatchData = mongo.createQuery(BatchData.class);
queryDeleteBatchData.field("uuid").equal(theBatch.uuid);
queryDeleteBatchData.field("senderUuid").equal(on.uuid);
WriteResult del = mongo.delete(queryDeleteBatchData);
if(del.getLastError() != null){
logger.error("ERROR");
}
} catch (Exception e) {
logger.error("ERROR" );
}发布于 2011-10-21 02:59:00
getLastError()命令做的是正确的事情。它告诉您操作是成功的(ok:1.0)并且没有发生错误("err":null)。
有关更多详细信息,请查看recently updated docs。
getLastError()还具有一些与日志记录和复制相关的功能,您可能希望对其进行研究。
编辑:
在回应第一条评论时:
...
if(del.getLastError().ok != 1.0){
logger.error("ERROR");
}
} catch (Exception e) {
logger.error("ERROR" );
}https://stackoverflow.com/questions/7839898
复制相似问题