1.前置增强:在目标方法执行之前执行
增强方法优先于目标方法执行
(2)后置增强:在目标方法执行后执行,无论目标方法运行期间是否出现异常。 注意:后置增强无法获取目标方法执行结果,可以在返回增强中获取
后置增强方法在目标方法后执行
(3)返回增强:在目标方法正常结束后执行,可以获取目标方法的执行结果
执行顺序:前置增强--->目标函数---->后置增强---->返回增强
(4)异常增强:目标方法抛出异常之后执行,可以访问到异常对象,且可以指定在出现哪种异常时才执行增强代码
执行顺序:前置增强--->目标函数---->后置增强---->异常增强
1.前值增强和异常增强只能选一种执行,不能都执行
2.目标函数要抛出异常。并且抛出的异常是public void afterThrowing(JoinPoint joinPoint,Exception e)中规定捕获的异常的子类,或者是同样的异常。
(5)环绕增强; 目标方法执行前后都可以织入增强处理,可以实现以上四种增强
执行顺序:前置增强---->目标函数--->后置增强---->返回增强/异常增强