JPA和Hibernate Fetch忽略关联?

时间:2009-02-12 17:17:03

标签: hibernate jpa hql jpql

我在ArrayList中有一个拥有One-Many拥有关系(Object B)的JPA实体(Object A)。

我希望能够在对象A中查询(Hibernate或JPA),而不会在One-Many ArrayList中返回任何关联对象B的实例(无代理或其他)。

理想情况下,返回的ArrayList将为null或为空。

这可能吗?在粗糙的伪代码中,这就是我想要的:

“来自ObjectA,其中ObjectA.id = 5不包含ObjectB”

“从ObjectA中选择一个FETCH IGNORE a.ObjectBs,其中a.id = 5”

1 个答案:

答案 0 :(得分:2)

如果ObjectA中ObjectB的关联是惰性的,除非您的查询指定要提取它们,否则不会在您的查询中返回ObjectB。

如果您在会话关闭后访问任何ObjectB,则会出现LazyInitializationException,因为您的ObjectB未加载到内存中。