Spring中的aware接口详情
251
2022-09-08
Mybatis源码解析之事务管理
目录Mybatis事务管理和Spring整合后的事务管理
Mybatis事务管理
我们可以在mybatis-config.xml中配置事务管理器的实现
当值为JDBC时,事务管理实现类为JdbcTransaction,底层利用数据库的Connection来管理事务
当值为MANAGED时,事务管理实现类为ManagedTransactionFactory,但它对事务的管理是一个空实现,将事务管理交给外部容器
JdbcTransaction
ManagedTransaction
和Spring整合后的事务管理
mybatis和spring整合创建TransactionFactory的时候,如果没有设置,则会将其设置为SpringManagedTransactionFactory
org.mybatis.spring.SqlSessionFactoryBean#buildSqlSessionFactory
但是真正执行事务的时候,http://一般情况下不会由SpringManagedTransaction来执行,因为我们一般都把事务交给spring来管理,当把事务交给spring管理的时候this.isConnectionTransactional=true,因此commit和rollback相当于是空实现
mybatis和spring整合后,一般还是由spring框架中的DataSourceTransactionManager来进行事务管理
如果你对spring进行事务管理不清楚的话,等我后续的spring专栏
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~