Hibernate绑定Session到本地线程


绑定本地的Session

  1. 之前在讲JavaWEB的事务的时候,需要在业务层使用Connection来开启事务,

    • 一种是通过参数的方式传递下去
    • 另一种是把Connection绑定到ThreadLocal对象中
  2. 现在的Hibernate框架中,使用session对象开启事务,所以需要来传递session对象,框架提供了ThreadLocal的方式

    • 需要在hibernate.cfg.xml的配置文件中提供配置

      • <property name="hibernate.current_session_context_class">thread</property>
    • 重新HibernateUtil的工具类,使用SessionFactory的getCurrentSession()方法,获取当前的Session对象。并且该Session对象不用手动关闭,线程结束了,会自动关闭。
      public static Session getCurrentSession(){
      return factory.getCurrentSession();
      }

    • 注意:想使用getCurrentSession()方法,必须要先配置才能使用。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容