arsaycode 2011-08-16
在开发SSH 集成项目过程中,可能会遇到如题目 那样的问题,在一个save()方法中不能把数据提交到数据库,而在后台打印的sql语句来看已经执行了insert 操作,具体是什么原因? 在网上翻查了好久,发现也有不少和我一样的情况,最后 得到原来是 在使用myeclipse工具自动生成 代码产生的副作用吧!
而且问题很明显,在写好一个save()方法后,在写一个get()的方法,然后先操作save(),再get()得到的 数据量却 增加了一条,有此可以知道 数据是保存在缓存中而未提交到数据库中的! 也可以说是
因为事务没提交 或 是回滚了的结果
原因是你集成了spring用myeclipse生产的代码
修改策略你在hibernate.xml配置文件里加上
<propertyname="connection.autocommit">true</property>变搞定
或者自己写dao 不用myeclipse生成代码 基本都可以通过的希望此方法可以帮助 和我一样遇到过此问题的战友 .........问题层出不穷,需要不断完善和增长自己的视野!文章会更新,希望大家多给意见和解决办法 , 来让所以朋友少走弯路,多发现不足点! 共同进步