JavaとSpringで最新バージョンのMongoDBを使用しています。
クラスタイプAを格納するコレクションからタイプNotAのクラスを埋められるようにしたいと思います。
クラスAとクラスNotAはまったく同じですが、1つの違いがあります。クラスNotAの名前は、Aではありません:)
議論のために、クラスAは次のようになります。
public class A {
String name;
String domain;
}
そして、Aコレクションには次のようなオブジェクトがあります。
{ "_id" : "b7990a90-7d95-4879-bb4a-5ec2fd13e262", "_class" : "com.someservice.A", "name" : "Dan", "domain":"global"}
この質問とは関係のない理由で、Aに読み込んでからNotAにコピーできないため、NotA(または、間にAではない他のオブジェクト、他に選択肢がない場合はNotA)に直接読み込む必要があります。
DBObjectを読み取ってから、すべてのフィールドを手動でコピーできると思いますが、デフォルトのリフレクションメカニズムに任せたいと思います。
NotAの@Documentアノテーションを@Document(collection = "A")に設定しましたが、それだけでは不十分です。残りの方法が必要です。
この問題には簡単な解決策があると思いますが、理解できません。ヘルプ?