1. @Before称为前置通知,在目标方法执行之前执行,可以有参数也可以没有参数
可以指定连接点的参数,通过该参数可以获取目标对象和目标方法等相关信息,如果通知有多个参数时连接点参数必须放到第一个
2.@AfterReturning后置通知,在目标方法结束之后执行
3.环绕通知
被@Around修饰的通知就是环绕通知
在被增强的方法前后执行
专门用于调用目标方法
环绕通知的作用
- 控制目标方法是否被执行
- 控制是否有返回值
- 改变返回值(不推荐)
4.
异常通知
@AfterThrowing当被增强的方法出现异常时执行该通知
5.最终通知
@After最终通知,无论是否出现异常都会被执行