Spring中的事务说明,spring的事务需要通过代理类来调用才会生效,因为代理类是Bean在初始化的时候由
Spring来管理,这个过程会读取每个方法上的注解,完成方法级别Interceper的注册,只有通过代理类进行调用的时候注解对应的切面逻辑才会执行
比如@Transaction注解,这个过程会根据注解事务的传播类型创建事务管理器,所以在使用事务注解的时候尽可能避免内部调用需要使用事务的方法
如果一定要在内部调用,需要再springBoot服务的入口类上增加注解开启暴露AOP,这样Spring会将代理类绑定到切面上下文中,内部方法调用的方法
调用方式则需要采用如下写法:
UserService userService = (UserService)AopContext.currentProxy();
调用内不方法
userService.saveUser1(user1);
Spring事务管理说明
8972212422025-02-19 10:33
相关推荐
The Future is mine24 分钟前
Python计算经纬度两点之间距离Enti7c25 分钟前
HTML5和CSS3的一些特性腥臭腐朽的日子熠熠生辉31 分钟前
解决maven失效问题(现象:maven中只有jdk的工具包,没有springboot的包)爱吃巧克力的程序媛32 分钟前
在 Qt 创建项目时,Qt Quick Application (Compat) 和 Qt Quick Applicationejinxian33 分钟前
Spring AI Alibaba 快速开发生成式 Java AI 应用杉之38 分钟前
SpringBlade 数据库字段的自动填充圈圈编码1 小时前
Spring Task 定时任务俏布斯1 小时前
算法日常记录独好紫罗兰1 小时前
洛谷题单3-P5719 【深基4.例3】分类平均-python-流程图重构27669582921 小时前
美团民宿 mtgsig 小程序 mtgsig1.2 分析