关于hibernate延迟加载错误的解决方案
在项目开发中,对于struts的数据读取,当遇到多个表关联的数据读取的时候,精彩会出现session close的错误,一般的解决方案是将hib的延迟加载错误取消掉,但是这样赶鸭子上架的解决机制无疑是对程序的极度不负责,在这里我们用到hibernte自带的一种机制,session.load。
例如
?
notic----user
user----userInfo
?
三个表,notic a = (notic)session.load(notic,id);
?
a.getuser()
a.getuser.getuserinfo();
?
session.transaction.commit();
?
问题解决。
?
?当然,还有个万能的方法,就是通过gethibernate获取sf工厂,通过工厂进行session申明,然后进行相关操作.
1 楼 bjtuliuseal 2009-06-02 使用了hibernate一年多吧,做过一两个项目,个人觉得延时加载没有太多意义。项目在生成映射文件时,基本上是删除了对象关联,除了涉及到级联存储的。涉及到多表查询的时候,一般都是重新映射数据库视图。 2 楼 linliangyi2007 2009-06-02 可怜的娃,写了这么辛苦,居然被投隐藏帖!!