在使用hibernate进行持久化时,有时需要动态的改变对象的加载,比如在编辑页面里面lazy=true,而在浏览页面lazy=false,这样可以在需要lazy的地方才进行控制。而配置文件中Lazy属性是全局控制的,如何处理呢?
在配置文件里面可以用lazy=true,在程序里面可以用强制加载的方法Hibernate.initialize(Object proxy) 方法强制加载这样就相当于动态改变为lazy=false。
但在使用时需要注意的一点是:其中的proxy是持久对象的关联对象属性,比如A实体,你要把A的关联实体B也检出,则要写Hibernate.initialize(a.b)。
关于延迟加载(lazy)和强制加载(Hibernate.initialize(Object proxy) )
最新推荐文章于 2025-05-06 22:45:52 发布
本文介绍了如何在使用Hibernate框架时动态地控制对象的加载行为。通过配置文件设置全局Lazy属性,并利用Hibernate.initialize方法实现特定场景下对象的强制加载,以此达到lazy=false的效果。
1322

被折叠的 条评论
为什么被折叠?



