专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Java Web开发

侠哥们,SSH中,hibernate的session什么时候关闭。解决思路

发布时间:2010-05-31 07:01:18 文章来源:www.iduyao.cn 采编人员:星星草
侠哥们,SSH中,hibernate的session什么时候关闭。
网上看了半天,还是没太搞明白。
  hibernate的session在SSH中是由spring控制的,就是说它的创建,销毁等都是spring控制的。
  那么什么时候这个session关闭呢。
  例如: 点击检索按钮,执行查找,返回数据到画面。
  这个时候,是在DAo层执行完查找就关闭了??? 还是在Service层事务结束时关闭了??还是说类似于线程池什么的,由 spring控制什么时候释放????
  
  如果在dao层session关闭的话,一级缓存就会被清除了吧。。。??? 如果在查找的话,先是一级缓存,然后再查找数据库。。。
  如果说session在返回到action以至于画面时候都没有关闭,那么在检索的时候是不直接就能从一级缓存里取出数据了。

  哪位大侠给讲讲。。。

------解决方案--------------------
session 如果自动关闭的话,要设时间的
一般tomcat下预设的是15分钟(好像,不太记得了!)
------解决方案--------------------
交由 spring 事务管理

相当于一个 session 池,要用的时候 ,通过 sessionFactory.getC..session() 来取得,不需要关闭。

当然你也可以通过 sessionFactory.openSession()来取得session,这样的话,用完就要关。
------解决方案--------------------
交由spring 管理, 就是 要用时 从线程中拿,用完放回去。 不开,不关。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: