spring4.14和hibernate4不聲明事務currentsession.save仍可以提交。why?
spring4和hibernate4我用hibernatetemplate.save報錯,說什麼事務為只讀,我以為是切面配置錯了,然後怎麼調也不行就換成了currentsession,就行了,然後我把關於事務聲明切面的配置文件都注釋掉了,getcurrentsession..save還是可以提交,這是為什麼啊,不明白了。
從網上找到好多答案,說hibernate4自己可以事務管理,但我不明白自己可以管理的意思是什麼,可以不使用spring做任何關於事務的事情了?
還說spring3不支持hibernatetemplate,然後又說4.14又支持了,那我現在用的是4.14,為什麼不可以save()
spring4.14和hibernate正確的事務管理到底是該怎麼配置,是用current就行了,不需要進行事務配置了,還是依舊使用hibernatetemplate然後對配置進行更改?從網上看各種配置都有,有沒有誰可以幫忙解答一下我所困惑的這些問題,謝謝。奈何我看不懂官網的文檔啊。
Hibernate本身就有事務控制。Spring對事務的配置都是在業務層,可以保證業務方法中如果有多個數據庫操作方法的話,要麼都提交成功,如果有一個失敗了,大家的操作都進行回滾,這樣可以保持數據的完整性。