spring HibernateTemplate.save() 方法的自动提交问题
Posted cnblogs_2015
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring HibernateTemplate.save() 方法的自动提交问题相关的知识,希望对你有一定的参考价值。
如题:
service1:
dao1.save(obj); //失败,应该给spring捕获,但没有,程序继续执行下去了。
redisService.fun1(); //被执行
service2:
dao1.update(obj); //失败,错误给spring捕获,抛出异常,程序终止。
redisService.fun1();
经过查找相关资料,确认是因为数据库表主键的问题
<id name="id" type="java.lang.String">
<column name="id" length="20" />
<generator class="assigned" />
</id>
当class="assigned"时使用getHibernateTemplate().save()是不能插入数据到数据库。
hibernate.xml配置文件里加上如下属性
hibernate.connection.autocommit=true
或者如下:
<property name="connection.autocommit">true </property>
以上是关于spring HibernateTemplate.save() 方法的自动提交问题的主要内容,如果未能解决你的问题,请参考以下文章
Spring学习6_Spring整合HibernateTemplate应用
HibernateTemplate和HibernateDaoSupport(spring注入问题)
细谈Spring深入源码分析Spring之HibernateTemplate 和HibernateDaoSupport
Spring中使用JdbcTemplate和HibernateTemplate的数据库操作