14

JPA EntityManager と JPA Query オブジェクトを使用して、アノテーション @OneToMany(fetch = FetchType.EAGER) を持つものをオーバーライドして、クエリで遅延フェッチするにはどうすればよいですか?

休止状態の Query オブジェクトがあれば、それで基準オブジェクトを作成し、これを使用してフェッチ タイプを遅延に設定できます。しかし、JPA Query オブジェクトを使用する必要があります。この問題の解決策はありますか?

4

2 に答える 2

9

ネイティブのHibernateAPIを使用しても、それを行う方法はありません。アソシエーションがEAGERとして定義されている場合、それは常に熱心にロードされ、クエリを使用してそれを変更する方法はありません。

逆は当てはまりません。クエリを使用してレイジーアソシエーションを熱心にロードできます。

于 2012-06-12T13:58:05.637 に答える