spring 事务的实现

本文介绍在Spring框架中如何配置事务管理器以及事务AOP的相关设置。重点讲述了DataSourceTransactionManager的作用及配置方法,并解释了如何通过配置使MyBatis能够利用Spring创建的连接来管理事务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

事务的实现需要的配置

         1.需要事务管理器

        2.事务aop相关配置

1.需要事务管理器

              我这里就是针对于mybaits来讲解的哈,因为事务管理器还有jpa的,hibernate的

思考??? 如果spring要管理事务的话,那肯定连接 就要spring来创建,mybaits获取连接的话,就要获取spring创建的这个连接,才能够控制事务 

                1.创建连接

                2.把连接的自动提交修改为false -- Connection 默认为true,自动提交

                3.事务的管理,提交/回滚

                4.跨方法事务的传递 (用到的是线程的ThreadLocal)         

                5.提供模板,DataSourceUtils让mybaits获取到 spring创建的这个连接,将事务的操作交给spring来做

如果是之前spring的话,就要添加下面这个配置,注入事务管理器 

/**
     * 必须要配置事务管理器才可以
     * DataSourceTransactionManager 是spring提供的事务管理器
     * @param dataSource
     * @return
     */
    @Bean
    public DataSourceTransactionManager dataSourceTransactionManager(DataSource dataSource) {
        return new DataSourceTransactionManager(dataSource);
    }

当然,spring boot 就不用显示配置这个事务管理器了,因为在aop的自动装配里面 帮我们把这个操作做了

类图在下面:

上面事务aop中,我们晓得了,通知 最后会被转为拦截器,进行一个拦截器链的调用,所以这里我们找到事务的通知,进入到invoke方法

这里会获取事务管理器

所以事务管理器也是事务的重要的配置

明天继续更新....

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值