程序员王小瑞 2023-08-30 11:04 采纳率: 19.2%
浏览 16

远程调用出现事务失效问题

远程调用出现事务失效问题:
我集合传入两个对象,一个正确对象,一个是在A服务中会抛异常的,此时出现对象1正常保存了数据,对象b在服务B中保存了,
按道理出现异常应该全部回滚,最终却没有回滚
以下是代码片段:

img

img

img


怎么解决这个事务失效的问题呢。

  • 写回答

2条回答 默认 最新

  • 专家-郭老师 Java领域新星创作者 2023-08-30 11:17
    关注

    你这个原因很明显了:
    1.要么你手动抛出的那个service异常不是继承runtimeExpection的,这时候事务是失效的。
    2.这个应该是你的原因所在,开发中避免不了会对同一个类里面的方法调用,比如有一个类Test,它的一个方法A,A再调用本类的方法B(不论方法B是用public还是private修饰),但方法A没有声明注解事务,而B方法有。则外部调用方法A之后,方法B的事务是不会起作用的。这也是经常犯错误的一个地方。

    评论

报告相同问题?

问题事件

  • 创建了问题 8月30日

悬赏问题

  • ¥30 不会,学习,有偿解答
  • ¥15 SQL查询语句报错(检查)
  • ¥15 此表中公式应该怎么写
  • ¥15 求HI-TECH PICC 9.50 PL3安装包
  • ¥15 下载ctorch报错,求解
  • ¥15 如何入门学习c语言,单片机
  • ¥15 idea 编辑语言的选择
  • ¥15 Windows下部署Asmjit
  • ¥15 请问双层规划模型的上下层目标函数不一致,是如何保证迭代收敛性的
  • ¥30 微信小程序 前端页面内容搜索