首页 > 代码库 > spring aop 的理解

spring aop 的理解

spring aop的相关概念(所有的概念都是为了生成代理类这个过程所需要的信息的抽象):

  1.Targer:目标对象。被代理的对象。

  2.Advice:增强/通知。就是为目标对象扩展的功能。分为前置增强、后置增强,异常增强,最终增强,环绕增强。

  3.Pointcut:切入点。指明增强要在目标了的那些方法上使用。

  4.Aspect:切面。就是增强(通知)和切入点的集合。如果一个切面没有切入点,那么增强就是一个切面,这个使用增强应用在目标类的所有方法上

  5.Joinpoint:连接点。用来在增强的中获取目标对象信息的对象

  6.Introduction:引介。一种技术,一种特殊的通知在不修改类代码的前提下,可以在运行期为类动态地添加一些方法或Field.

  7.Weaving:织入。一种技术,把增强应用到目标对象,生成代理对象的过程

  8.Proxy:代理。就是和目标和有相同的方法名对象。该方法内部是增强代码和目标对象同名方法代码的集合(即目标方法功能被扩展了)

  9.spring采用动态代理织入,而AspectJ采用编译期织入类转载期织入

spring aop 的理解