aop 是面向对象编程oop的补充 面向对象编程是从静态的角度考虑程序的结构 面向切面编程是从动态的角度考虑程序运行的过程
aop底层 是采用动态代理模式实现的 采用了两种代理 jdk的动态代理和 cglib的动态代理
1、切面(aspect):对主业务进行增强的代码就是切面 常用的有通知advice和顾问advistor
2、织入(weaving):将切面代码插入到目标对象的过程
3、连接点(joinpoint):指可以被切面织入的方法 同样业务接口的方法都是连接点
4、切入点(pointcut) :被织入切面的连接点就是切入点
5、目标对象(target):将要被增强的对象
6、通知advice:切面的一种实现可以完成简单的织入 通知可以指定切入的时间点 什么时候切入(但无法指定切入点)
7、顾问(advistor):切面的另一种实现 可以指定 切入的时间点和切入点