Hibernate-openSession与getCurrentSession区别

转载 2015年07月06日 20:25:16

openSession 每次使用都是打开一个新的session,使用完需要调用close方法关闭session;如果使用openSession而没有手动关闭,多次之后会导致连接池溢出(Connection对象不会被释放)

getCurrentSession 是获取当前session对象,连续使用多次时,得到的session都是同一个对象,这就是与openSession的区别之一 ;

一般在实际开发中,往往使用getCurrentSession多,因为一般是处理同一个事务,所以在一般情况下比较少使用openSession;

使用getCurrentSession需要在配置文件中配置

如果是本地事务(jdbc事务)

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

如果是全局事务 (jta事务)

 <property name="hibernate.current_session_context_class">jta</property>



相关文章推荐

Hibernate openSession() 和 getCurrentSession的区别

Hibernate openSession() 和 getCurrentSession的区别   getHiberanteTemplate 、getCurrentSession和OpenSessi...

Hibernate中的openSession(),getSession() 和 getCurrentSession() 的区别

开发中,使用MyEclipse自动生成的Hibernate DAO类中在对session的获取中,都使用的getSession(MyEclipse8.5之前的版本都是如此)。 首先要说明一下这3个方...
  • jpbirdy
  • jpbirdy
  • 2012年02月27日 15:43
  • 2025

hibernate中 openSession和getCurrentSession的区别

hibernate中 openSession和getCurrentSession的区别
  • hoho_12
  • hoho_12
  • 2016年11月03日 16:41
  • 279

hibernate: openSession() 和getCurrentSession()的区别

hibernate中, 有两个方法 openSession()和getCurrentSession(),值得讨论。 在进行配置信息管理时,我们一般进行一下简单步骤: Configuration cf...

hibernate之openSession()和getCurrentSession()的区别

hibernate之openSession()和getCurrentSession()的区别

Hibernate中openSession()与getCurrentSession()的区别与联系

SessionFactory接口获得Session(会话)实例有两种方式,一种是通过openSession(),另外一种是通过getCurrentSession()。这里讨论获得Session两种方式...

hibernate 的SessionFactory的getCurrentSession 与 openSession() 的区别

1 getCurrentSession创建的session会和绑定到当前线程,而openSession不会。 2 getCurrentSession创建的线程会在事务回滚或事物提交后自动关闭,而o...

Hibernate两种获取session的方式openSession和getCurrentSession的区别与理解

1)openSession和getCurrentSession的区别 openSession必须关闭,currentSession在事务结束后自动关闭 openSession没...

Hibernate关于Session管理的openSession和getCurrentSession的理解

1:getCurrentSession会把Session和当前的线程关联起来,而openSession只是重新开启一个Session 2:getCurrentSession获得的Session会在事...

hibernate openSession() 与 getCurrentSession()

1 getCurrentSession创建的session会和绑定到当前线程,而openSession不会。 2 getCurrentSession创建的线程会在事务回滚或事物提交后自动关闭,而op...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Hibernate-openSession与getCurrentSession区别
举报原因:
原因补充:

(最多只允许输入30个字)