spring aop4和5不同的执行顺序
2022-01-05 本文已影响0人
mundane
spring4
- 正常情况
- 环绕通知之前
- @Before前置通知
- 方法调用
- 环绕通知之后
- @After后置通知
- @AfterReturning返回后通知
- 异常情况
- 环绕通知之前
- @Before前置通知
- @After后置通知
- @AfterThrowing异常通知
spring5
- 正常情况
- 环绕通知之前
- @Before前置通知
- 方法调用
- @AfterReturning返回后通知
- @After后置通知
- 异常情况
- 环绕通知之前
- @Before前置通知
- @AfterThrowing异常通知
- @After后置通知
总结
@After后置通知就相当于try...catch...finally中的finally, @AfterThrowing相当于catch,而4的版本是错的,5是对的,它把finally放在了catch后面