如何用Mybatis源码解析事务管理
导读:本文共1168.5字符,通常情况下阅读需要4分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: Mybatis事务管理我们可以在mybatis-config.xml中配置事务管理器的实现<transactionManagertype="JDBC"/>当值为JDBC时,事务管理实现类为JdbcTransaction,底层利用数据库的Connection来管理事务当值为MANAGED时,事务管理实现类为ManagedTransa... ...
目录
(为您整理了一些要点),点击可以直达。Mybatis事务管理
我们可以在mybatis-config.xml中配置事务管理器的实现
<transactionManagertype="JDBC"/>
当值为JDBC时,事务管理实现类为JdbcTransaction,底层利用数据库的Connection来管理事务
当值为MANAGED时,事务管理实现类为ManagedTransactionFactory,但它对事务的管理是一个空实现,将事务管理交给外部容器
JdbcTransaction
ManagedTransaction
和Spring整合后的事务管理
mybatis和spring整合创建TransactionFactory的时候,如果没有设置,则会将其设置为SpringManagedTransactionFactory
org.mybatis.spring.SqlSessionFactoryBean#buildSqlSessionFactory
但是真正执行事务的时候,一般情况下不会由SpringManagedTransaction来执行,因为我们一般都把事务交给spring来管理,当把事务交给spring管理的时候this.isConnectionTransactional=true,因此commit和rollback相当于是空实现
mybatis和spring整合后,一般还是由spring框架中的DataSourceTransactionManager来进行事务管理
</div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
如何用Mybatis源码解析事务管理的详细内容,希望对您有所帮助,信息来源于网络。