在批量操作Spring MongoDB中替换整个文档

时间:2019-03-25 11:53:16

标签: spring-data-mongodb

我正在使用Spring Boot版本2.1.0和mongo驱动程序版本3.8.2。在批量更新操作期间,我无法替换整个文档。

在升级到Spring Boot版本2.1.0之前,它运行良好。我在春季启动1.5.9中使用了ops.find()。replaceOne()

我尝试了BulkOps.updateOne。。但是它抛出了无效的Bson名称_id。

我尝试了dbObject.remove(“ _ id”);但是其他字段仍然出现错误。

BulkOperations ops = mongoOperations.bulkOps(BulkOperations.BulkMode.UNORDERED, A.class);
list.forEach(item -> {
Document dbObject = new Document();
converter.write(item, dbObject);
ops.updateOne(query(where("_id").is(item.getId())),Update.fromDocument(dbObject));
});
ops.execute();

Expected -- it should replace the entire document matching the ID.

0 个答案:

没有答案