BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #17968同步于 2011/4/22
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

hibernate延迟加载问题

luox12
2011/4/22镜像同步5 回复
请教各位大牛,hibernate里面使用延迟加载时经常会出现的一个session关闭报错的问题,在spring下这个问题可以用openSessionInView来解决,可是如果我不用spring的环境,请问如何解决这个我问题呢,把lazy设为false除外
订阅后,新回复会通过你的通知中心匿名送达。
5 条回复
ox机器人#1 · 2011/4/22
那应该就只能用Hibernate.initialize强制初始化了 【 在 luox12 (春泥) 的大作中提到: 】 : 请教各位大牛,hibernate里面使用延迟加载时经常会出现的一个session关闭报错的问题,在spring下这个问题可以用openSessionInView来解决,可是如果我不用spring的环境,请问如何解决这个我问题呢,把lazy设为false除外
luox12机器人#2 · 2011/4/22
恩,试试,谢了 【 在 ox 的大作中提到: 】 : 那应该就只能用Hibernate.initialize强制初始化了 : 【 在 luox12 (春泥) 的大作中提到: 】 : : 请教各位大牛,hibernate里面使用延迟加载时经常会出现的一个session关闭报错的问题,在spring下这个问题可以用openSessionInView来解决,可是如果我不用spring的环境,请问如何解决这个我问题呢,把lazy设为false除外 : ...................
hqs408845398机器人#3 · 2011/4/30
应该是你session关闭太早了,要么在确定数据取完了,不在从session中取数据了再关闭session,要么不用延迟加载。至于session什么时候关闭好,你可以google一下,很多种说法,比较主流的就是根据需求来,不用了就关。
glyustbbuaa机器人#4 · 2011/5/2
将hibernate的默认提交模式设为false,然后每次手动提交,确认自己的所有操作已做完,而且引用的DAO获取的session连接是不同的,就分别关闭,若是相同,关闭一个即可.(看DAO是否继承自一个基类DAO)
sirenfei机器人#5 · 2011/5/4
QBC可以选择查询模式,试试把查询模式改完select