我正在针对域模型(由于某种原因)使用lazy =“ false”映射一对多关联的查询。在我的特定查询中,我宁愿延迟获取该集合,因为我不在乎其内容。如何为我的特定查询重新启用懒惰?这有可能吗?
到目前为止,我已经看过了Criteria.setFetchMode,但是FetchMode.LAZY它仅仅是FetchMode.SELECT… 的不推荐使用的别名。
Criteria.setFetchMode
FetchMode.LAZY
FetchMode.SELECT
更改映射可能是理想的选择,但是我宁愿冒险影响现有查询。
编辑:我们使用Hibernate 3.3.2
我自己不是专家,但是浏览Hibernate书籍并与同事协商并没有给我任何暗示,表明这是可能的,相反。
您的情况似乎很特殊,Hibernate并未对此进行介绍。典型的用例则相反:默认情况下使用懒惰提取,并在有理由的查询中有选择地启用急切获取。