1
我有类与多对一的关系。当我使用Criteria.list查询它们时,会填充惰性字段。懒惰的领域总是加载
public class SE {
@OneToMany(fetch = FetchType.LAZY, mappedBy = "mSe")
private List<RS> mRs;
}
public class RS {
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "my_join_id")
private SE mSe;
}
...
Criteria criteria = session.createCriteria(SE.class);
List<SE> myObjects = criteria.list();
// SE objects have lazy list populated. why?
我该如何防止被加载的懒领域?
你怎么知道他们被填充?而且,当你运行'criteria.list()'时,查询是什么? –
如果您运行查询,即获取数据,它们是否不应该被填充? – efekctive
criertia如帖子所示。也许我误解了延迟加载。我认为这些字段不会被加载,除非我在事务还在发生时通过使用访问器来明确加载它们。我可以通过在trasnaction结束后查看调试器来加载惰性列表。 –