努力的靠近目标 2018-10-09 02:02 采纳率: 0%
浏览 6092

为什么exception无法捕获spring 中proceedingJoinPoint类中的 proceed的异常?

在Spring AOP的环绕通知控制事务时,使用proceedingJoinPoint类中的 proceed 放行原始方法时需要抛出一个异常,但只能使用Throwable捕获

  • 写回答

1条回答 默认 最新

  • 叫兽-郭老师 新星创作者: Java技术领域 2018-10-09 02:19
    关注

    Spring AOP异常捕获原理:
    被拦截的方法,须显式的抛出异常,且不能做任何处理,
    这样AOP才能捕获到方法中的异常,进而进行回滚。
    换句话说,就是在Service层的方法中,不需要使用 try...catch
    或者在catch中的最后加上 throw new RuntimeException(); 这样程序才会被AOP捕获,进而进行回滚。

    评论

报告相同问题?