2013-02-13 59 views
0
@Entity 
public class Foo { 
    int v1; 
    int v2; 

    @ManyToOne 
    Bar bar; 
} 

Query query = EntityManager.createQuery("select foo from Foo"); 

上述查询返回Foo(S),而且负载(或多个)对象bar期间如何避免装载多对一对象。如何防止加载条形对象?选择操作

回答

1

默认情况下,多对一的关系是渴望的。当延迟抓取是优选的,它可以用以下来完成:

@ManyToOne (fetch=FetchType.LAZY) 

FetchType.LAZY只是暗示给提供商,根据JPA 2.0规范与FetchType.LAZY属性可能会或可能不会被加载。所以不保证在所有的JPA实现中都懒惰 - 在Hibernate中它确实有效。