私はSpring data MongoTemplateを使用してmongo操作を管理しています。JSONの完全なドキュメントを保存して更新しようとしています(JavaでString.classを使用)。
例:
String content = "{MyId": "1","code":"UG","variables":[1,2,3,4,5]}";
String updatedContent = "{MyId": "1","code":"XX","variables":[6,7,8,9,10]}";
以下を使用して、コードと変数を個別に更新できることを知っています。
Query query = new Query(where("MyId").is("1"));
Update update1 = new Update().set("code", "XX");
getMongoTemplate().upsert(query, update1, collectionId);
Update update2 = new Update().set("variables", "[6,7,8,9,10]");
getMongoTemplate().upsert(query, update2, collectionId);
しかし、私たちのアプリケーション アーキテクチャにより、オブジェクト全体を直接置き換える方が便利な場合があります。私の知る限り:
getMongoTemplate().save(content,collectionId)
getMongoTemplate().save(updatedContent,collectionId)
saveOrUpdate 機能を実装していますが、これにより 2 つのオブジェクトが作成され、何も更新されません。
何か足りない?アプローチはありますか?ありがとう