ストーリーは次のとおりです。実際にインスタンス化するクラスのヒントとして、デフォルトでタイプを追加します。 MongoTemplate
を介してドキュメントを読み込むには、タイプをパイプする必要があるため とにかく2つの可能なオプションがあります:
- 実際に保存されているタイプを割り当てることができるタイプを渡します。その場合、保存されたタイプを考慮し、それをオブジェクトの作成に使用します。ここでの古典的な例は、ポリモーフィッククエリを実行することです。抽象クラス
Contact
があるとします。 とあなたのPerson
。次に、Contact
をクエリできます sそして私たちは本質的にしなければならない インスタンス化するタイプを決定します。 - 一方、完全に異なるタイプを渡す場合は、実際にドキュメントに保存されているタイプではなく、その特定のタイプにマーシャリングします。タイプを移動するとどうなるかという質問をカバーします。
型情報を実際の型に変換するための、ある種のプラグ可能な型マッピング戦略をカバーするこのチケットを見ることに興味があるかもしれません。長い修飾クラス名を数文字のハッシュに減らしたい場合があるため、これは単にスペース節約の目的に役立ちます。また、別のデータストアクライアントによって生成された完全に任意のタイプのキーを見つけてそれらをJavaタイプにバインドする、より複雑な移行シナリオも可能になります。