您的位置:首页 > 运维架构

OpenSession与getCurrentSession的区别

2017-03-28 22:22 337 查看
getCurrentSession 使用当前的Session

OpenSession 创建一个行的Session

1.getCurrentSession创建的Session会更当前线程绑定,而OpenSession不会。

2.getCurrentSession创建的线程会在事物提交或回滚的时候自动关闭,而OpenSession必须得手动关闭。

在Hibernagte中使用getCurrentSession中有这两种配法:

  1.(本地事物)对单个数据库进行操作,也就是只针对一个事物(jdbc事物)

  <property name="current_session_context_class">thread</property>

  如果没有会报异常:

  


  2.(全局事务)多个数据库之间进行操作,并且只能在一个事物中操作(jta事务)

  <property name="current_session_context_class">jta</property>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: