openSession和getCurrentSession的区别 thred jta

转载 2012年03月22日 21:19:07
1.在调用openSession()方法时,总是新建session,而getCurrentSession()方法,则是从上下文中找session,如果上下文中有session,那么就不需要新建,如果上下文中没有找到session,则新建session。

    2.getCurrentSession()可以用于界定事务边界,调用getCurrentSession()方法时,事务提交的时候,自动关闭session,而openSession()方法需要手动调用session.close()方法关闭session。

    3.getCurrenSession()查找session时的上下文,可以分为两种,一种为thread,一种为jta(需要在hibernate.cfg.xml文件中手动配置)。

        当上下文设置为thread时,getCurrentSession()查找session时到数据库的线程中去查找,直接使用数据库的Connection连接来管理事务。

        上下文设置为jta时,多半是项目的数据需要存储到不同的数据库,需要transaction manager来专门管理事务,这个transaction manager一般有application server来提供。这种事务,称为分布式事务。

    4.注意:openSession()方式和getCurrentSession()方式不能混用。

JNDI、JTA和JMS介绍

什么是JNDIJNDI全面总结原理:         在DataSource中事先建立多个数据库连接,保存在数据库连接池中。当程序访问数据库时,只用从连接池中取空闲状态的数据库连接即可,访问结束,销毁...
  • cuiran
  • cuiran
  • 2014年11月09日 16:02
  • 3851

hibernate4无法保存数据

hibernate4无法保存数据,getCurrentSession无法保存数据,spring事务影响hibernate4保存数据...
  • u011511684
  • u011511684
  • 2014年06月28日 16:08
  • 3836

分布式事务(jms,dubbo)

关于Dubbo服务框架的分布式事务,虽然现在不急着做,但可以讨论一下。 我觉得事务的管理不应该属于Dubbo框架, Dubbo只需实现可被事务管理即可, 像JDBC和JMS都是可被事务管理的分布式资源...
  • yuzjang
  • yuzjang
  • 2014年11月26日 13:43
  • 2574

getCurrentSession()与openSession()的区别&&PROPAGATION_REQUIRED事务管理

转载:getCurrentSession()与openSession()的区别&&PROPAGATION_REQUIRED事务管理 采用编程式事务 1、 getCurrentSessi...
  • w938706428
  • w938706428
  • 2014年12月05日 09:13
  • 491

Hibernate openSession() 和 getCurrentSession的区别

Hibernate openSession() 和 getCurrentSession的区别   getHiberanteTemplate 、getCurrentSession和OpenSessi...
  • Pp______Pp
  • Pp______Pp
  • 2011年11月28日 17:02
  • 784

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

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

hibernate中 openSession和getCurrentSession的区别

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

getCurrentSession 与 openSession() 的区别

http://blog.csdn.net/loveyout/article/details/4193894   1 getCurrentSession创建的session会和绑定到当前...
  • sony315
  • sony315
  • 2011年10月17日 06:10
  • 308

getCurrentSession and openSession() 的区别

1 getCurrentSession创建的session会和绑定到当前线程,而openSession不会。 2 getCurrentSession创建的线程会在事务回滚或事物提交后自动关闭,而op...
  • asd2568494
  • asd2568494
  • 2013年06月10日 17:53
  • 246

openSession与getCurrentSession的区别

openSession、getCurrentSession区别 博客分类:  hibernate Hibernate多线程Spring配置管理JDBC  1 getCurrentSessio...
  • renlei0109
  • renlei0109
  • 2014年04月01日 19:43
  • 485
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:openSession和getCurrentSession的区别 thred jta
举报原因:
原因补充:

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