オブジェクトのインスタンスがあり、Update
それを String JSON 表現に変換して、後で使用できるようにしたいと考えています。
次のように更新オブジェクトを作成しました。
Update update = new Update();
update.set("field", new SomeClass());
update.unset("otherField");
// etc
私の最初の試みは:
update.getUpdateObject().toString();
このアプローチはほとんどの場合に機能しましたが、 のインスタンスをシリアル化できなかったため、ときどき失敗しましたSomeClass
。これはスタックトレースでした:
java.lang.RuntimeException: json can't serialize type : class com.example.SomeClass
at com.mongodb.util.JSON.serialize(JSON.java:261)
at com.mongodb.util.JSON.serialize(JSON.java:115)
at com.mongodb.util.JSON.serialize(JSON.java:161)
at com.mongodb.util.JSON.serialize(JSON.java:141)
at com.mongodb.util.JSON.serialize(JSON.java:58)
at com.mongodb.BasicDBObject.toString(BasicDBObject.java:84)
MongoTemplate
andのインスタンスを利用できますが、MongoConverter
これらのクラスを使用してこのタスクを実行する方法がわかりません。
質問は:
Update オブジェクトの JSON 表現を取得する正しい方法は何ですか?
spring-data-mongodb バージョン 1.1.0.M1 を使用しています。