返回通知、异常通知、环绕通知

    返回通知:是在方法正常结束之后执行的通知,可以访问方法返回值。

    使用@AfterReturning注释,我们还可以在注释里面指定一个返回值的名字,然后再方法中使用它。

返回通知、异常通知、环绕通知_第1张图片

 

    当方法出异常,就不会有这个通知了

返回通知、异常通知、环绕通知_第2张图片

 

 

    异常通知:是在方法出现异常后执行的通知,可以访问异常对象

    使用@AfterThrowing注释,我们还可以在注释里指定一个异常对象的名字,然后再方法里使用

    返回通知、异常通知、环绕通知_第3张图片

返回通知、异常通知、环绕通知_第4张图片

 

 

    这里我们可以用异常方法指定特定异常,作出特定的通知

 

    返回通知、异常通知、环绕通知_第5张图片

 

    环绕通知:

    使用@Around注释,功能最强,却不常用,环绕通知需要携带ProceedingJoinPoint类型的参数。环绕通知类似于动态代理全过程,ProceedingJoinPoint类型参数可以决定是否执行目标方法,且环绕通知必须要有返回值,返回值即为目标方法的返回值,

   返回通知、异常通知、环绕通知_第6张图片

 

 返回通知、异常通知、环绕通知_第7张图片

 

    //前置方法消失了,留个坑,今后去找原因

 

    我们如果想执行目标方法,就该这样写:

  返回通知、异常通知、环绕通知_第8张图片

 

    很明显,环绕通知包含了所有通知类型

转载于:https://www.cnblogs.com/figsprite/p/10785509.html

你可能感兴趣的:(返回通知、异常通知、环绕通知)