Spring的AOP开发的相关术语
转载自 https://www.cnblogs.com/ltfxy/p/9873618.html
SpringAOP简介:
- AOP思想最早是由AOP联盟组织提出的。Spring使用这种思想最好的框架。
- Spring的AOP有自己实现的方式,但是非常繁琐。AspectJ(开源)是一个AOP框架,Spring引入AspectJ作为自身AOP的开发。
- AspectJ是一个面向切面的框架,扩展了Java语言,定义了AOP语法。Aspect:切面
Spring有两套AOP开发方式
- Spring传统方式(弃用)
- Spring基于AspectJ的AOP开发(使用)
AOP开发的相关术语:
- JoinPoint:连接点,可以被拦截(增强)到的点
- pointCut:切入点,真正要被拦截(增强)到的点
- Advice:通知、增强。方法层面的增强。比如权限校验的方法被称为是通知。
- Introduction:引介,也是增强,不过是类层面的增强。一般研究的是方法层面。
- Target:目标,被增强的对象(例如userDao)
- Weaving:织入,将通知应用到目标的过程。比如将权限校验的代码应用到UserDao的save方法上的过程。
- Proxy:一个类被AOP织入增强后,产生一个结果代理类
- Aspect:切面,多个通知和多个切入点的组合