2016-07-04 10 views
4

Für Upsert MongoTemplate bietet eine Methode, die auf folgende Weise verwendet werden kann.Spring MongoTemplate das gesamte Objekt hochsetzen

Aber es wird nur der Name festgelegt. Was, wenn ich alle Schlüssel einfügen möchte, die mit dem neuen Benutzerobjekt verbunden sind. außer dem Namen möchte ich E-Mail und viele andere Werte einfügen. Ich kann set("key","name") für jedes Element verwenden, aber ist es möglich, das gesamte Objekt für Upsert zu speichern.

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 hilfreich tl; dr 'aktualisieren update = Update.fromDBObject (BasicDBObjectBuilder.start ("$ set", your_ob) .get()); ' –

Antwort

-1

Ich denke, save, dass für Sie tun können. Hier ist die documentation.

-1

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

wird ein Einsatz durchführen speichern, wenn das Objekt, um es nicht bereits vorhanden ist, sonst aktualisieren, , dass ein ‚Upsert‘ ist.

Verwandte Themen