吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2266|回复: 4
收起左侧

[Java 转载] 多层嵌套事务带来的问题

[复制链接]
like_life 发表于 2020-11-24 13:32
Transaction rolled back because it has been marked as rollback-only


多层嵌套事务中, 如果使用的是默认的事务传播方式, 那么在内层事务抛出异常的时候, 外层事务捕捉并正常执行完毕, 就会报出rollback-only异常

问题在于spring所使用的默认事务传播级别是PROPAGATION_REQUIRED, 然后在方法中出现了事务嵌套,
但是内层的事务出错了, 在内层事务结束时, spring会把事务标记为rollback-only, 如果外层事务也捕获了异常,
那么就会把代码执行完, 然后在提交事务时发现事务已经被标记为rollback-only, 但是方法却正常执行了, 这个时候就会抛出对应异常

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

wsat 发表于 2020-11-24 14:05
注解类事务是基于AOP代{过}{滤}理的 当在同一个类定义了2个事务,互相调用 第二个事务会不执行 还是使用第一个事务
火凤燎原 发表于 2020-11-24 14:08
是的。只要在第一个server上加@Transactional就够了
头像被屏蔽
xiadongming 发表于 2020-11-24 18:04
You123456 发表于 2020-11-25 09:34
前两天面试还被问了类似的问题,蒙蔽
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 23:38

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表