
上QQ阅读APP看书,第一时间看更新
4.2 Spring AOP的通知类型
Spring AOP有五种通知类型,下面对这五种通知类型进行具体介绍。
4.2.1 五种通知类型

1. 前置通知
前置通知(@Before)是指在一个连接点之前执行的通知。前置通知没有能力阻止后面的执行(除非它抛异常),也就是说在执行目标方法之前运行。
2. 环绕通知
环绕通知(@Around)是指环绕一个连接点(比如方法调用)的通知,是最强的一种通知。环绕通知可以在方法调用之前或之后执行自定义的行为,环绕通知也可以选择是否要处理连接点方法的执行,通过返回一个值或者直接抛出异常。环绕通知是使用最普遍的一种通知。
3. 返回通知
返回通知(@After (finally))是指在连接点执行完成后执行,不管是正常执行完成,还是抛出异常,都会执行返回通知中的内容。
4. 异常返回通知
异常返回通知(@AfterThrowing)是指如果方法因为抛出异常而退出了才会执行的通知,也就是说在目标方法出现异常后运行。
5. 正常返回通知
正常返回通知(@AfterReturning)是指在连接点正常执行完成后执行的通知,如果连接点抛出异常,则不会执行。
4.2.2 五种通知类型的代码演示

下面简单介绍这五种通知类型如何使用。
代码如下:
