我们使用的是Spring Framework,并且正在建立一个站点,通过球衣直接与应用程序的服务层进行通信。我们遇到了一些场景,我们的模型中的特定事物被延迟加载(因为我们需要它们),但我们希望能够在服务或dao中“翻转开关”,以告诉模型获取模型所以我们不需要编写一堆代码来获取我们需要的关系。是否可以在模型之外控制EAGER/LAZY加载?
这可能吗?
List parents = session.createCriteria(Parent.class)
.add(Restrictions.like("prop", value))
.setFetchMode("childs", FetchMode.EAGER)
.list();
热切即使在默认情况下它的延迟访
如果您不想使用Hibernate API,那么您可以在同一会话中(通常在DAO方法中)访问延迟加载的属性。对于集合,你必须调用类似'size()'的东西。 – 2013-03-15 16:53:06