小编oxy*_*r0n的帖子

如何使用Java驱动程序对MongoDB集合执行保存操作?

我只是从Python切换,需要继续使用MongoDB数据库.一个特定的任务是将传入的文档(在本例中为推文)保存到集合中以进行存档.推文可以多次出现,所以我更喜欢使用save(),insert()因为如果文档已经存在于集合中,前者不会引发错误.但似乎MongoDB的Java驱动程序不支持保存操作.我错过了什么吗?

编辑:供参考,我正在使用这个库 'org.mongodb:mongodb-driver:3.0.2'

示例代码:

MongoCollection<Document> tweets = db.getCollection("tweets");
...
Document tweet = (Document) currentDocument.get("tweet");
tweets.insertOne(tweet);
Run Code Online (Sandbox Code Playgroud)

当推文已经存在时,最后一行引发此错误:

Exception in thread "main" com.mongodb.MongoWriteException: insertDocument :: caused by :: 11000 E11000 duplicate key error index: db.tweets.$_id_ dup key: { : ObjectId('55a403b87f030345e84747eb') }

java mongodb

1
推荐指数
1
解决办法
1943
查看次数

标签 统计

java ×1

mongodb ×1