Spring通知有哪些类型?
Spring切面可以应用5种类型的通知:
- 前置通知(Before):在目标方法被调用之前调用通知功能;
- 后置通知(After):在目标方法完成之后调用通知,此时不会关心方法的输出是什么;
- 返回通知(After-returning ):在目标方法成功执行之后调用通知;
- 异常通知(After-throwing):在目标方法抛出异常后调用通知;
- 环绕通知(Around):通知包裹了被通知的方法,在被通知的方法调用之前和调用之后执行自定义的行为。
执行顺序:
Spring在5.2.7之后就改变的advice 的执行顺序。 在github官网版本更新说明中有说明:如图
1、正常执行:@Before>方法>@AfterReturning>@After
2、异常执行:@Before>方法>@AfterThrowing>@After