Spring事务内方法调用自身事务
Spring事务内方法调用自身事务 增强的三种方式
ServiceA.java文件: 查看Spring Tx的相关日志: 可以看到只创建了一个事物ServiceA.service方法的事务,但是callSelf方法却没有被事务增强; 分析原因:Spring事务生成的对象也是被Cglib或JDK代理的对象,就区别于该对象本身了, 代理的对象执行方法之前会走拦截器链,就不能同this方法. 解决方案:
1.使用Autowired注解将自身注入,然后调用注入属性的方法; 验证输出结果: 确实初始化了callSelf的事务;
2.之前Aop可以将代理对象
/*** 注意:启动类需要加上 @EnableAspectJAutoProxy(exposeProxy = true)*///调用方法public void originMethod(){...code...XxxService xxxService = (XxxService) AopContext.currentProxy();xxxService.transactionalMethod(param...);
}
//带事务的方法
@Transactional(rollbackFor = Exception.class)
public void transactionalMethod(param...){code...
}
3.service注入到action中
service注入到action中 之前本人每次要获得service都是在action自己通过WebApplicationContext的getBean获得的,一直在spring中只配置到了service这一层,没有配置过action.今天闲的无聊将action也配置到了spring,原来是这么的简单. 1.添加jar包struts2-spring-plugin-xxx.jar2.在struts.xml配置文件中增加 <constant name="struts.objectFactory
Spring事务内方法调用自身事务相关推荐
- springboot 调用方法事物_SpringBoot 内部方法调用,事务不起作用的原因及解决办法...
在做业务开发时,遇到了一个事务不起作用的问题.大概流程是这样的,方法内部的定时任务调用了一个带事务的方法,失败后事务没有回滚.查阅资料后,问题得到解决,记录下来分享给大家. 场景 我在这里模拟一个场景 ...
- WCF分布式开发常见错误(13):此方法调用的事务被异步中断
今天WCF事务编程的时候遇到这个错误:The transaction under which this method call was executing was asynchronously abo ...
- Spring的refresh()方法调用过程
Spring的refresh()方法调用过程 refresh()是Spring中比较核心的方法,Spring所有的初始化都在这个方法中完成 具体代码如下 public void refresh() t ...
- 【每日提高之声明式事物】spring声明式事务 同一类内方法调用事务失效
2019独角兽企业重金招聘Python工程师标准>>> [问题] Spring的声明式事务,我想就不用多介绍了吧,一句话"自从用了Spring AOP啊,事务管理真轻松啊, ...
- spring声明式事务 同一类内方法调用事务失效
一 宏观说明 [问题] Spring的声明式事务,我想就不用多介绍了吧,一句话"自从用了Spring AOP啊,事务管理真轻松啊,真轻松:事务管理代码没有了,脑不酸了,手不痛了,一口气全配上 ...
- 内部方法调用,事务不起作用的原因及解决办法
在做业务开发时,遇到了一个事务不起作用的问题.事情是这样的,方法内部的定时任务调用了一个带事务的方法,失败后事务没有回滚.查阅资料后,问题得到解决,记录下来分享给大家. 场景 我在这里模拟一个场景,大 ...
- Spring 事务方法与非事务方法相互调用 @Transactional 注解失效不回滚?
写这篇文章的初衷呢就是最近遇到了一个Spring事务的大坑.与其说是坑,还不如说是自己事务这块儿太薄弱导致的(自嘲下). 项目环境 Spring Boot 下面开始问题描述,发生的过程有点长,想直接看 ...
- Spring事务方法与非事务方法执行相互调用不回滚,你踩过这个坑没?
作者:西风一任秋 blog.csdn.net/m0_38027656/article/details/84190949 写这篇文章的初衷呢就是最近遇到了一个spring事务的大坑.与其说是坑,还不如 ...
- Spring事务失效 -方法内部调用
首先感谢网友的文章 Spring事务失效的2种情况 JDK动态代理给Spring事务埋下的坑 前提知识: 两个前提 1 注解使用 spring容器的事务管理注解 @org.springframewor ...
最新文章
- 面试官:兄弟,说说 ArrayList 和 LinkedList 有什么区别
- vector在java中用什么_在java中使用Vector是否安全?
- js中当等于最小值是让代码不执行_网页中JS函数自动执行常用三种方法
- 在pascal环境下学习record
- python xlwt操作excel
- access与sqlserver数据转换
- 图像语义分割(15)-ConvCRFs:用于语义分割的卷积条件随机场
- 一小时做出Java实战项目——飞翔的小鸟
- 如何卸载mysql2008让_怎么才能把sql2008卸载干净
- 缺少计算机所需的介质程序,win10系统UEFi安装提示“缺少计算机所需的介质驱动程序”的图文方案...
- python艺术签名_用 Python 制作一个艺术签名小工具,给自己设计一个优雅的签名...
- 电商营销新思路:CPS分销推广模式
- IMF最新报告:E-money上位,合成版「央行数字货币」迎来曙光
- Vue FSC在线编译代码实时预览@vue/repl
- java构建树状结构工具类
- 流行音乐表明我们的注意力越来越短
- 「机器学习」天池比赛:金融风控贷款违约预测
- electron,win10,消息通知
- HTML和ftl的关系
- 我是怎么和SAP结缘的 - Jerry的SAP校园招聘之路