我写的一个项目,用spring管理service层事务,利用aop:config织入service层,然后配置tx:advice,设置tx:method标签,name="delete*","insert*","update*",满足这三种特征的service方法,能正常实现再异常时回滚。但是,我在service定义了另外一个没有带着个特征的方法,比如
userRegedit(){}
在这个方法里调用"insert*"方法,未使用任何try catch,从控制台上看异常被抛出,但是事务却没回滚,请问这是为什么?难道说spring只能看到最终抛出异常的方法,被调用方法是不管的?
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已采纳
spring的事务控制,嵌套调用时为何不起效
收起
- 写回答
- 好问题 0 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
5条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
征服.刘华强 2014-03-24 01:26关注http://www.cnblogs.com/daxin/p/3393855.html
你直接调用insertAAA 是Proxy.insertAAA() 代理对象加了事物。
你是调用的BBB 那么是这样的 proxy.BBB 代理对象调用了BBB方法。
然后你BBB里调用了AAA 那等于是这样的 target.aaa() 是目标对象调用的。
所以事物就不起作用了本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
编辑预览轻敲空格完成输入- 显示为
- 卡片
- 标题
- 链接
评论按下Enter换行,Ctrl+Enter发表内容
编辑
预览

轻敲空格完成输入
- 显示为
- 卡片
- 标题
- 链接
报告相同问题?
提交
- 2022-01-11 07:11回答 1 已采纳 事务的隔离级别是指在两个会话当中。例如会话A设置隔离级别为读未提交,那么当会话B修改了数据但没有提交,A是可以读到B的修改的。
- 2022-04-24 15:14回答 2 已采纳 2.6的springboot好像不支持配置类方式的跨域,用注解就行了
- 2015-09-09 22:21回答 3 已采纳 如果这两个方法你是写在一个Bean里面的开启事物是REQUIRED,那调用还是REQUIRED,你可以吧REQUIRES_NEW的方法写的另一个service 中。这样才能自治。同时,spring默
- 2022-08-14 04:58宏远十一冠王的博客 最近在使用Spring框架时遇到了一些问题,主要是Spring的事务传播问题,一个不带事务的方法调用带事务的方法,有时候会出现不回滚的情况,所以写了这篇文章来记录一下。
- 2020-12-08 02:41回答 4 已采纳 把sessionID保存到redis或其他轻量数据库
- 2022-05-31 05:50回答 2 已采纳 lombok链式需要加上@Accessors(chain = true),默认是非链式的
- 2017-02-07 04:43回答 7 已采纳  真的是其它的注入地方影响到了它的代理 我去除了Sh
- 2021-05-25 01:18weixin_46952699的博客 spring方法调用导致事务失效原因及解决方案 1、事务失效场景复现 背景 我们在平时的工作中写业务逻辑的时候,有可能会遇到这么一个场景:在一个循环中处理事务问题。在使用声明式事务的情况下我们有两种选择,要么把...
- 2022-06-17 14:52回答 2 已采纳 Spring是Aop是动态代理,实际上实在Bean初始化过程中就增强了,实际使用的是代理后的对象,而new 出来的就是原始对象自然没有增强功能了
- 2022-05-09 01:09回答 3 已采纳 根据楼上提示,在ExceptionTranslationFilter源码中有如下代码 private void handleAccessDeniedException(HttpServletR
- 2013-04-06 10:41回答 2 已采纳 com.xuanyan.uebuycar.admin.[color=red]services[/color].sys.SysUserService 1、先在控制器中通过AopU
- 2022-08-04 02:12测试__昵称的博客 事务嵌套
- 2022-06-16 16:42最北方的博客 Spring事务、Spring事务的传播属性、事务的嵌套、以及Spring事务失效的场景举例
- 2025-02-17 15:44周小闯的博客 Spring 通过 AOP(面向切面编程)实现事务管理。当容器扫描到方法上有注解时,会为目标对象...Spring事务传播属性:1.propagation-required: 支持当前事务,如果有就加入当前事务中;如果当前方法没有事务,就新建一个事务;
- 2023-03-02 17:13沙拉黑子的博客 AService有事务在afterCommit后触发没有事务的BService#exec,在BService#exec中 触发有事务的CService#exec,并且CService#exec也有 afterCommit 事务提交后的操作。(最终CService#exec#afterCommit没有执行)
- 没有解决我的问题, 去提问
联系我们(工作时间:8:30-22:00)
400-660-0108kefu@csdn.net在线客服
- 京ICP备19004658号
- 经营性网站备案信息
公安备案号11010502030143
- 营业执照
- 北京互联网违法和不良信息举报中心
- 家长监护
- 中国互联网举报中心
- 网络110报警服务
- Chrome商店下载
- 账号管理规范
- 版权与免责声明
- 版权申诉
- 出版物许可证
- ©1999-2025北京创新乐知网络技术有限公司