1

我只是在学习 MongoDB 并将 URL 缩短器作为 POC 实现。我正在阅读关于 NodeJS/Mongoose 的教程并看到了这个方法:

Model.findByIdAndUpdate(id, [update], [options], [callback])

更新和回调操作都是原子的吗?还是只有更新操作是原子的?

如果两者都是原子的,如何在 Java 中做到这一点?Mongo-java-driver 有这个方法

collection.findOneAndUpdate(query, update, options);

但显然不支持回调。任何帮助表示赞赏。

4

1 回答 1

-2

回调在3.0 版本的 mongo java 驱动程序中可用。如果您使用的是较低版本的 mongo java 驱动程序,请将其升级到 3.0 或更高版本。

有关 findOneAndUpdate 回调示例,请参阅此帖子

其他有用的帖子

https://github.com/mongodb/mongo-java-driver/tree/master/driver-async

http://www.programcreek.com/java-api-examples/index.php?api=com.mongodb.async.SingleResultCallback

http://mongodb.github.io/mongo-java-driver/3.0/?_ga=1.13498046.849992754.1476359743

原子性

MongoDB 中的所有写操作在单个文档级别上都是原子的。

https://docs.mongodb.com/v3.2/tutorial/update-documents/ https://docs.mongodb.com/v3.2/core/write-operations-atomicity/

于 2016-11-01T06:00:53.343 回答