Advice(通知)的类别有哪些?

it2024-07-11  43

通知类别分为:

前置通知(Before advice):在目标方法调用前执行通知 实现类:org.springframework.aop.BeforeAdvice 注解:@Before

后置通知(After advice):在目标方法完成(不管是抛出异常还是执行成功)后执行通知 实现类:org.springframework.aop.AfterAdvice 注解:@After

环绕通知(Around advice):在目标方法调用前后均可执行自定义逻辑 实现类:org.aopalliance.intercept.MethodInterceptor 注解:@Around

返回通知(After returning advice):在目标方法执行成功后,调用通知 实现类:org.springframework.aop.AfterReturningAdvice 注解:@AfterReturning

异常通知(After throwing advice):在目标方法抛出异常后,执行通知 实现类:org.springframework.aop.ThrowsAdvice 注解:@AfterThrowing

通知的优先顺序:

前置,后置环绕,后置,后置返回

注1:Spring只支持方法级的增强,所以前置增强目前可用的是org.springframework.aop.MethodBeforeAdvice,而BeforeAdvice是为将来扩展需要准备的。 注2:前置通知与环绕通知不能同时使用!

最新回复(0)