hibernete奇怪问题?

SANBENREN 2009-04-05 05:24:39
老是出现
failed to lazily initialize a collection of role: com.discount.vo.GoodBasicInfo.dtTempinfo, no session or session was closed
说我lazy失败,session被关闭!可是我明明查了呀,而且还保存到session里面了?
我的HQL语句是 list=this.getSession().createQuery("from GoodBasicInfo g where g.cities=? order by g.good_last_id desc")
.setParameter(0, cities).setFirstResult(0).setMaxResults(8).list()

通过list取值也可以取到,不知道什么原因?
大家帮帮忙啊!
...全文
1745 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
lionback 2010-07-06
  • 打赏
  • 举报
回复
我也出现了这样的问题
dongdong98 2010-04-21
  • 打赏
  • 举报
回复
wwwe
向万里 2010-01-29
  • 打赏
  • 举报
回复
看一看,遇到同样的问题。
qq707472 2009-04-05
  • 打赏
  • 举报
回复
lazy = false 或者在session 关闭之前用一次那个对象·
KK3K2005 2009-04-05
  • 打赏
  • 举报
回复
去查询
懒加载 和 托管对象
kingofvc 2009-04-05
  • 打赏
  • 举报
回复
http://www.99inf.net/SoftwareDev/Java/52025.htm

其实你话一秒钟时间去google的话 网络上一堆
SANBENREN 2009-04-05
  • 打赏
  • 举报
回复
后一种怎么操作呢 ? 能不能再详细点儿 !
kingofvc 2009-04-05
  • 打赏
  • 举报
回复
hibernate 有个lazy属性, 默认是true 也就是说 一个对象A关联的另外一些集合对象B 在A被查询出来的时候 不会主动去数据库查询B对象的集合。
解决方法有两种 一种是 hibernate配置文件中 lazy改为false 但是这样 每次都会把关联的对象涉及的table都有查询
另外一种是 使用Hibernate提供的until方法来取出对象后马上进行关联对象的初始化操作 方法名字叫做initialize

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧