Y at-il un moyen de modifier la valeur de l'une des clés dans MongoDb via son pilote Java. J'ai essayé le suivant:
someCollection.update(DBObject query, DBObject update);
someCollection.findAndModify(DBObject query, DBObject update);
Mais les deux fonctions remplacent complètement le document interrogé avec le document mis à jour. Quel est le moyen de mettre à jour seulement une valeur d'une clé particulière comme dans le cas de l'utilisation de $ set dans le shell mongo (à part de créer un document complètement nouveau avec tous les champs copiés et l'un des champs mis à jour).
Quelle est la deuxième déclaration pour? Et il semble qu'il n'y ait pas de fonction appelée append dans la classe com.mongodb.DBCollection. Mais cela fonctionne bien sans la deuxième déclaration. Merci –
Deuxième déclaration montre que vous pouvez ajouter autant de «set» que vous le souhaitez en mise à jour unique. C'était mon erreur, au lieu de someCollection.append devrait être set.append, j'ai mis à jour ma réponse. –
Salut, cette réponse n'est pas correcte, elle ne définira que la dernière valeur. Voir la réponse que j'ai posté ci-dessous –