默认spring事务只在发生未被捕获的 runtimeexcetpion时才回滚。
spring aop 异常捕获原理:被拦截的方法需显式抛出异常,并不能经任何处理,这样aop代理才能捕获到方法的异常,才能进行回滚,默认情况下aop只捕获runtimeexception的异常,但可以通过配置
使spring对特定Exception进行捕获,并且回滚
配置如下:
@Transactional(noRollbackFor=MessageException.class)
时间: 2024-11-06 03:31:39