Mybatis源码解析之事务管理 目录 Mybatis事务管理 和Spring整合后的事务管理 Mybatis事务管理 我们可以在mybatis-config.xml中配置事务管理器的实现 transactionManager type=JDBC/ 当值为JDBC时,事务管理实现类为JdbcTransaction,底层利用数据库的Connection来管理事务 当
目录
- Mybatis事务管理
- 和Spring整合后的事务管理
Mybatis事务管理
我们可以在mybatis-config.xml中配置事务管理器的实现
<transactionManager type="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来进行事务管理

如果你对spring进行事务管理不清楚的话,等我后续的spring专栏
到此这篇关于Mybatis源码解析之事务管理的文章就介绍到这了,更多相关Mybatis事务管理内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
本文标题为:Mybatis源码解析之事务管理
基础教程推荐
- 是否适合从javabean类更新数据库? 2023-11-04
- 深入理解约瑟夫环的数学优化方法 2024-03-07
- Java+mysql实现学籍管理系统 2023-03-16
- JSP 动态树的实现 2023-12-17
- Java中EnvironmentAware 接口的作用 2023-01-23
- JavaWeb 实现验证码功能(demo) 2024-04-14
- Java编写实现窗体程序显示日历 2023-01-02
- 运用El表达式截取字符串/获取list的长度实例 2023-08-01
- 使用Java和WebSocket实现网页聊天室实例代码 2024-02-25
- springboot下使用shiro自定义filter的个人经验分享 2024-02-27
