这篇是我最近回顾事务问题时的备忘。
自调用失效
同类内部方法直接调用,@Transactional 可能不会生效,因为绕过了代理。
异常回滚边界
默认只对 RuntimeException 回滚。
如果是受检异常,需要明确声明回滚策略。
传播行为
REQUIRED:常用默认值REQUIRES_NEW:隔离子事务,但也可能引入额外开销
实战里要先确定“业务原子性边界”,再决定传播行为。
这篇是我最近回顾事务问题时的备忘。
同类内部方法直接调用,@Transactional 可能不会生效,因为绕过了代理。
默认只对 RuntimeException 回滚。
如果是受检异常,需要明确声明回滚策略。
REQUIRED:常用默认值REQUIRES_NEW:隔离子事务,但也可能引入额外开销实战里要先确定“业务原子性边界”,再决定传播行为。
Learning Note
本文为个人学习记录,主要来自与 AI 对话后的知识整理与实践总结,仅供个人学习参考。