我有三个实体:
@Entity
@Table(name="a")
class A {
@Id
Long id;
@OneToMany(fetch = FetchType.EAGER)
@JoinColumn(name = "a_id")
Set<B> bs;
// ... other fields
}
@Entity
@Table(name = "b")
class B {
@Id
Long id;
@OneToMany(fetch = FetchType.EAGER)
@JoinColumn(name = "c_id")
Set<C> cs;
// ... other fields
}
@Entity
@Table(name = "c")
class C {
@Id
Long id;
// ... other fields
}
当我使用JPA的Criteria API来获得A时,Hibernate首先只获取A,然后是每个A,所有B,最后是每个B所有的C&#39; s。
是否可以强制使用理论上的一个选择进行提取?
答案 0 :(得分:2)
Hibernate不支持很好地获取多个渴望的集合。看看这里。
顺便说一句,你真的需要那些收藏品吗?
答案 1 :(得分:0)
没有internal iteration
的声音是不可能的。
在这种情况下,我想建议Hibernate Native Sql query。