AOP基本概念
* 切面(Aspect)
将散落于各个业务逻辑之中的Cross-cutting concerns收集起来,设计成各个独立可重用的对象,这样的对象称之为Aspect。
* 通知(Advice)
Aspect当中对Cross-cutting concerns的具体实现称之为Advice。Advice中包括了Cross-cutting concerns的行为或所要提供的服务。
* 连接点(Joinpoint)
Advice在应用程序执行时加入业务流程的点或时机。
* 切入点(Pointcut)
定义了感兴趣的Jointpoint,当调用的方法符合Pointcut表达式时,将Advice织入至应用程序上提供服务。
*目标对象(Target Object)
一个Advice被应用的对象或目标对象,如前面的HelloSpeaker就是LogHandler中Advice的Target
*引入(Introduction)
在不修改原程序代码的情况下,为现存的类引入新的方法或行为
* AOP代理(AOP Proxy)
是由AOP框架创建的对象,用来实现切面契约(包括通知方法执行等功能)
* 织入(Weave)
Advice被应用到对象之上的过程称之为织入(Weave)
各个概念的结构关系: