Mybatis源碼解析之事務管理
Mybatis事務管理
我們可以在mybatis-config.xml中配置事務管理器的實現(xiàn)
<transactionManager type="JDBC"/>
當值為JDBC時,事務管理實現(xiàn)類為JdbcTransaction,底層利用數(shù)據(jù)庫的Connection來管理事務
當值為MANAGED時,事務管理實現(xiàn)類為ManagedTransactionFactory,但它對事務的管理是一個空實現(xiàn),將事務管理交給外部容器

JdbcTransaction

ManagedTransaction

和Spring整合后的事務管理
mybatis和spring整合創(chuàng)建TransactionFactory的時候,如果沒有設置,則會將其設置為SpringManagedTransactionFactory
org.mybatis.spring.SqlSessionFactoryBean#buildSqlSessionFactory


但是真正執(zhí)行事務的時候,一般情況下不會由SpringManagedTransaction來執(zhí)行,因為我們一般都把事務交給spring來管理,當把事務交給spring管理的時候this.isConnectionTransactional=true,因此commit和rollback相當于是空實現(xiàn)

mybatis和spring整合后,一般還是由spring框架中的DataSourceTransactionManager來進行事務管理

如果你對spring進行事務管理不清楚的話,等我后續(xù)的spring專欄
到此這篇關于Mybatis源碼解析之事務管理的文章就介紹到這了,更多相關Mybatis事務管理內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
java本機內存分配Native?memory?allocation?mmap失敗問題解決
這篇文章主要介紹了java本機內存分配Native?memory?allocation?mmap失敗問題解決,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-11-11
利用spring?boot+WebSocket實現(xiàn)后臺主動消息推送功能
目前對于服務端向客戶端推送數(shù)據(jù),常用技術方案有輪詢、websocket等,下面這篇文章主要給大家介紹了關于利用spring?boot+WebSocket實現(xiàn)后臺主動消息推送功能的相關資料,需要的朋友可以參考下2022-04-04
Java使用itext生成復雜數(shù)據(jù)的pdf的示例代碼
Apache iText 是一個開源 Java 庫,支持 PDF 文檔的開發(fā)和轉換,在本教程中,我們將學習如何使用 iText 開發(fā)可以創(chuàng)建、轉換和操作 PDF 文檔的 Java 程序,感興趣的小伙伴跟著小編一起來看看吧2024-12-12
SpringBoot應用的打包和發(fā)布實現(xiàn)
本文主要介紹了SpringBoot應用的打包和發(fā)布實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-04-04
使用BigDecimal進行精確運算(實現(xiàn)加減乘除運算)
這篇文章主要介紹了如何使用BigDecimal進行精確運算,最后提供了一個工具類,該工具類提供加,減,乘,除運算2013-11-11
Maven編譯錯誤:程序包com.sun.*包不存在的三種解決方案
J2SE中的類大致可以劃分為以下的各個包:java.*,javax.*,org.*,sun.*,本文文章主要介紹了maven編譯錯誤:程序包com.sun.xml.internal.ws.spi不存在的解決方案,感興趣的可以了解一下2024-02-02

