如何更改hibernate的默认获取策略?
Posted
技术标签:
【中文标题】如何更改hibernate的默认获取策略?【英文标题】:How to change hibernate's default fetching strategy? 【发布时间】:2010-12-02 21:47:44 【问题描述】:我知道hibernate的默认获取策略是LAZY集合,有没有办法通过配置文件更改系统范围的默认获取策略?
【问题讨论】:
没有。你能做的最好的就是<hibernate-mapping>
上的'default-lazy'属性:docs.jboss.org/hibernate/stable/core/reference/en/html/…
上面的死链接。见forum.hibernate.org/viewtopic.php?p=2372843
【参考方案1】:
我不知道有什么好的答案可以满足您的需要,抱歉。 :-(
但是我可以挑战你的要求吗? ;-)
如果您为集合启用早期提取(即 XToMany 或父子关系),则可能也足以启用另一方 (XToOne),即更有可能需要。
考虑到您的实体通常没有完全分区,即“有一个实体链允许从任何实体到任何其他实体”...
我们推断即使是最简单的请求也会加载整个数据库!
这就是我认为“不太可能是个好主意”的原因。
【讨论】:
+1。将所有关联设置为急切获取绝不是一个好主意。 我试图将全局获取策略设置为惰性以上是关于如何更改hibernate的默认获取策略?的主要内容,如果未能解决你的问题,请参考以下文章