传统spring aop开发总结
第一步:编写目标对象(target)
第二步:编写通知(advice)
传统的aop开发中,通知是需要实现指定接口。
第三步在配置文件中配置切面(切面=切点+通知)
<aop:config>来声明要对aop进行配置
<aop:pointcut>它是用于声明切点(简单说就是对哪些方法进行拦截)
<aop:advisor>定义传统的aop的切面,传统的aop切面它只能包含一个切点与一个增强
<aop:aspect>定义aspectj框架的切面.,它可以包含多个切点与多个通知
在开发中使用的比较多的是execution语法.
关于execution语法常用:
- execution(public * *()) 所有的public的方法
- execution(* cn.itheima.aop.*(..)) 所有的aop包下的所有类的方法(不包含子包)
- execution(* cn.itheima.aop..*(..)) 所有的aop包及其子包下的所有类的方法
- execution(* cn.itheima.aop.IOrderService.*(..)) IOrderService接口中定义的所有方法
- execution(* cn.itheima.aop.IOrderService+.*(..))匹配实现特定接口所有类的方法
- execution(* save*(..)) 区配所有的以save开头的方法