2016-07-04 4 views
4

Для Upsert MongoTemplate предлагает один из способов, который будет использоваться следующим образом.Spring MongoTemplate upsert весь объект

Но, он установит только имя. Что делать, если я хочу вставить все ключи, связанные с новым пользовательским объектом. Кроме имени, я хочу вставить электронную почту и многие другие значения. Я могу использовать 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

https://stackoverflow.com/questions/43591032/spring-mongotemplate-update-merge был полезным Т.Л., д-р 'Обновление обновление = Update.fromDBObject (BasicDBObjectBuilder.start ("$ набор", your_ob) .get()); ' –

ответ

-1
mongoTemplate.save(user); or mongoTemplate.save(user,"customer");//if you need to save it in another collection name.

сохранить выполнит вставку, если объект не присутствует еще будет обновлять, , что является "upsert.

 Смежные вопросы

  • Нет связанных вопросов^_^