execution(public void com.spring.dao.impl.StudentDaoImpl.*(..)),这个就是织入点的语法,它告诉AOP框架哪个类中方法需要进行AOP
- execution语法介绍
- execution(public * *(..))
- execution(* set*(..))
- execution(* com.xyz.service.AccountService.*(..))
- execution(* com.xyz.service...(..))
上面只是举例说明了execution的语法,下面是一个标准的语法定义
- Spring AOP注解例子
- @Before前置建议,它是在执行一个业务方法之前插入的切面
- @AfterReturning,它是当一个方法正常运行后,执行的切面
- @After,它是当方法执行成功或者出现异常的时候都会执行切面
- @Around,它相当于一个AOP链,如果当前AOP执行后,就让下一个AOP执行
- @AfterThrowing,如果在方法中有错误抛出,则执行此建议
- Spring AOP @Before @Around @After 的执行顺序
-
一个方法 被一个aspect 拦截
-
一个方法 被多个个aspect 拦截
图片来自网络https://blog.csdn.net/u011277123/article/details/91532149