Spring切面可以应用5种类型的通知:
- 前置通知:在目标方法被调用之前调用通知功能;
- 后置通知:在目标方法完成之后调用通知,此时不会关心方法的输出是什么;
- 返回通知:在目标方法成功执行之后调用通知;
- 异常通知:在目标方法抛出异常后调用通知;
- 环绕通知:通知包裹了被通知的方法,在被通知的方法调用之前和调用之后执行自定义的行为。
执行顺序:
Spring在5.2.7之前的执行顺序是:
正常:前置-->方法--后置--返回
异常:前置-->方法--后置--异常
Spring在5.2.7之后就改变的通知的执行顺序改为:
1、正常执行:前置--->方法---->返回--->后置
2、异常执行:前置--->方法---->异常--->后置