MongoTemplate upsert - la manière facile de faire une mise à Jour à partir des pojo (dont l'utilisateur a editted)?

Ici est un simple pojo:

public class Description {
    private String code;
    private String name;
    private String norwegian;
    private String english;
}

Et s'il vous plaît voir le code suivant pour appliquer une upsert à MongoDb via printemps MongoTemplate:

Query query = new Query(Criteria.where("code").is(description.getCode()));
Update update = new Update().set("name", description.getName()).set("norwegian", description.getNorwegian()).set("english", description.getEnglish());
mongoTemplate.upsert(query, update, "descriptions");

La ligne pour générer le Update objet spécifie tous les domaines de la Item classe manuellement.

Mais si mon Item objet de modifications, puis mon Dao couche de pauses.

Donc est-il un moyen pour éviter de le faire, de sorte que tous les champs de mon Item classe sont appliqués automatiquement à la mise à jour?

E. g.

Update update = new Update().fromObject(item);

Remarque que mon pojo ne s'étend pas DBObject.

OriginalL'auteur vikingsteve | 2013-11-15