spring事務(wù)管理

僅供參考

mybatis-spring – MyBatis-Spring | 第四章 事務(wù)

《Spring技術(shù)內(nèi)幕》學(xué)習(xí)筆記16——Spring具體事務(wù)處理器的實(shí)現(xiàn) - CSDN博客

項(xiàng)目中混用mybaits和jpa.連接池使用druid.如何處理事務(wù)。

使用 MyBatis-Spring 的主要原因是它允許 MyBatis 參與到 Spring 的事務(wù)管理中。而 不是給 MyBatis 創(chuàng)建一個(gè)新的特定的事務(wù)管理器,MyBatis-Spring 利用了存在于 Spring 中的 DataSourceTransactionManager。

一旦 Spring 的 PlatformTransactionManager 配置好了,你可以在 Spring 中以你通常的做 法來配置事務(wù)。@Transactional 注解和 AOP(Aspect-Oriented Program,面向切面編程,譯 者注)樣式的配置都是支持的。在事務(wù)處理期間,一個(gè)單獨(dú)的 SqlSession 對(duì)象將會(huì)被創(chuàng)建 和使用。當(dāng)事務(wù)完成時(shí),這個(gè) session 會(huì)以合適的方式提交或回滾。

一旦事務(wù)創(chuàng)建之后,MyBatis-Spring 將會(huì)透明的管理事務(wù)。在你的 DAO 類中就不需要額 外的代碼了。


指定的 DataSource 一般可以是你使用 Spring 的任意 JDBC DataSource。這包含了連接 池和通過 JNDI 查找獲得的 DataSource。

要注意, 為事務(wù)管理器指定的 DataSource 必須和用來創(chuàng)建 SqlSessionFactoryBean 的 是同一個(gè)數(shù)據(jù)源,否則事務(wù)管理器就無法工作了。


所以項(xiàng)目中mybaits和jpa數(shù)據(jù)源使用相同,則可以通過spring進(jìn)行事務(wù)處理。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容