对于Upsert MongoTemplate
提供了一种方法,可以按照以下方式使用。
但是,它只会设置名称。如果我想插入与新用户对象关联的所有键,该怎么办?即除名称外,我想插入电子邮件和许多其他值。
我可以对每个项目使用set("key","name")
,但是可以保存整个对象以进行upsert。
Query query = new Query();
query.addCriteria(Criteria.where("name").is("Markus"));
Update update = new Update();
update.set("name", "Nick");
mongoTemplate.upsert(query, update, User.class);
答案 0 :(得分:-1)
我猜save
可以为你做到这一点。这是documentation。
答案 1 :(得分:-1)
mongoTemplate.save(user); or
mongoTemplate.save(user,"customer");//if you need to save it in another collection name.
保存将执行 如果对象尚未存在则插入,否则它将更新, 这是一个' upsert'。