0

コンテキスト: Java8 アプリケーション、Spring MongoDB 1.9.1

A のエンティティを含むコレクションと、B のエンティティを含む別のコレクションがあります。私のドメイン モデルでは、エンティティ A は、このように DBRef として B のコレクションを持っています。

class A {
    @DBRef
    List<B> myBs;
}

さらに、A 用と B 用の 2 つの AbstractMongoEventListeners を登録しました。タイプ A または B のドキュメントを MongoTemplate.findById() 経由で直接取得すると、onAfterConvert() メソッドが正常にトリガーされます。ただし、A をフェッチするだけであれば、A の DBRef されたリスト内の各アイテム B に対しても onAfterConvert メソッドがトリガーされると予想されます。実際には、そうではありません。

これが設計どおりに機能すると推測する危険がありますが、一方で、DB から読み込まれるエンティティ/ドキュメントに対して onAfterConvert が機能しない理由がわかりません。

簡単に言うと、A がロードされた後、B のすべてのアイテムに対して何らかの後処理を行う必要があります。誰かがこれに対するエレガントな解決策を持っていますか?

4

2 に答える 2