<?>关于spring里HibernateDaoSupport的关于session的获取方法
来源:互联网 发布:电脑钢琴软件带曲谱 编辑:程序博客网 时间:2024/06/06 07:33
我在一个事务里调用了两次getCurrentSession,就是this.getHibernateTemplate().getSessionFactory().getCurrentSession(),却打开了两个session,事务提交后只关闭了一个。如果我换成HibernateDaoSupport提供的方法操作却没有这个问题,只打开1个session提交后正常关闭。请问这是怎么回事?
我做了几个测试如果使用this.getSession()则session正常关闭,调用多次也没问题。如果使用this.getHibernateTemplate().getSessionFactory().getCurrentSession(),始终打开1个session并且不能关闭。如果使用this.getHibernateTemplate().getSessionFactory().getSession(),调用几次打开几个session并且都不能关闭。就是说,凡是通过this.getHibernateTemplate().getSessionFactory()获得的session都不在事务管理内。我的spring的sessionFactory配置是这样的<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="configLocation" value="classpath:hibernate.cfg.xml"/></bean>因为如果使用this.getSession()正常,所以事务配置应该是没有问题的。而且有一点,如果是通过this.getHibernateTemplate().getSessionFactory()获得的session必须要beginTransaction,而this.getSession()则不用。我在dao里分别打印了两种途径获得的session的.getTransaction().isActive(),很显然,getCurrentSession()的是false。
0 0
- <?>关于spring里HibernateDaoSupport的关于session的获取方法
- 关于该死的HibernateDaoSupport
- 关于HibernateDaoSupport的一些问题
- spring中的HibernateDaoSupport的用法(Session是如何获取的)
- 关于HibernateDaoSupport的几个不错的讲解
- php里关于session的一些函数
- HibernateTemplate 和HibernateDaoSupport的session
- HibernateTemplate 和HibernateDaoSupport的session
- 关于前两篇获取session问题的总结!
- 关于Session 获取重名的感悟
- spring整合hibernate关于session的管理
- spring整合hibernate关于session的管理
- Spring中关于hibernate的session
- spring整合hibernate关于session的管理
- spring整合hibernate关于session的管理
- spring整合hibernate关于session的管理 .
- 关于函数里变量值的获取
- Hibernate,Spring管理获取事务里的Session
- Android主题更换机制
- 判断手机号码格式的正则表达式
- 【20141107noip】模拟训练第一题:combo
- 关于this和super的区别(转载)
- 新建Android项目时使用project from existing source导入已经存在的项目报 AndroidManifest.xml file missing异常解决方案
- <?>关于spring里HibernateDaoSupport的关于session的获取方法
- CPU cost对全表扫描成本的影响
- Enze fourth day(循环语句 一)
- 武汉大学计算机学院招博士目录
- codevs3012 线段覆盖 4 dp好题
- 【P1776】关押罪犯 noip2010
- Android自动提示控件AutoCompleteTextView
- C# Hashtable的遍历
- lipo命令,给你的应用程序瘦身