在Spring事务管理实践中,Service层方法内使用try-catch捕获异常后事务未回滚,是导致数据不一致的典型问题。团队讨论揭示了对事务机制理解的分歧:部分成员误认为捕获异常即终止事务,实则需满足“未被catch吞没”或显式配置`rollbackFor`属性;另有方案建议抛出`RuntimeException`(Spring默认回滚的异常类型),或改用`REQUIRES_NEW`传播行为隔离事务边界。这些策略各具适用场景,核心在于厘清Spring事务的回滚条件与传播机制。
Spring事务异常捕获事务回滚rollbackFor传播行为
2026-05-08