0
エンティティを1つの埋め込みコレクションで取得するための正しいJPAクエリを作成する際に問題があります。JPA 1つのエンティティ内の2つの遅延コレクション - JPAクエリを実行してエンティティと1つのコレクションのみを取得する方法
public class Entity {
private String value;
@OneToMany(fetch = FetchType.LAZY)
@JoinColumn(name="entity_id")
private List<ElementA> elementsA;
@OneToMany(fetch = FetchType.LAZY)
@JoinColumn(name="entity_id")
private List<ElementB> elementsB;
}
そして、私はJPAのクエリを実行し、エンティティやコレクション「elementsAに関する情報のみを取得したい。たとえば、私は2つのコレクション(私は両方のコレクションのためにFetchType.LAZYを持っていると思います)を持つエンティティを持っています'私はしようとしていた:
"From Entity e join fetch e.elementsA eA"
しかし、私はエラーを持っている:
Caused by: org.hibernate.LazyInitializationException:
failed to lazily initialize a collection of role:
model.jpa.entities.Entity.elementsB,
could not initialize proxy - no Session
私はコレクション「elementsA」に関する情報のみを取得するために、このクエリを記述する必要がありどのように。
ありがとう、Darek。
FWIW JPQLは "SELECT e"で始まりますが、それは移植性がありません。 –