首页 > 代码库 > AOP术语

AOP术语

对于Spring的AOP一直是一知半解,用的时候配置配置就用了,但是对它定义的术语还是很纠结,不能很准确的理解,但是要想正真的用好一想技术,就要理解这项技术的表达方式,术语就是这门技术表达方式最基本的单位。

有幸今天又看了一遍《Spring In Action》中对AOP的叙述,豁然开朗,茅塞顿开,在此总结一下各个术语的含义。

横切关注点:一个分布于应用中多处的功能叫做横切关注点,如日志,审计,事务等。

切面(Aspect):通知+切点,定义了在何时何处完成一项实际的功能。

通知(Advice):切面在某一时刻要完成的工作,也就是是what和when,spring一共有五种通知,分别为

  1. Before
  2. After
  3. After-returning
  4. After-throwing
  5. Around

切点(Pointcut):一个或多个连接点,定义了一个切面在何处执行通知。

连接点(Joinpoint):应用中能够插入切面的一个点。

织入(Weaving):将切面应用到目标对象来创建代理对象的过程。织入在对象声明周期中有三种实现方式:

  1. 编译期,需要特殊的编译器
  2. 类加载期,需要特殊的类加载器
  3. 运行期,通过AOP容器动态创建代理对象


AOP术语