spring-AOP基本概念

来源:互联网 发布:多益网络策划笔试 编辑:程序博客网 时间:2024/06/05 23:50

基本概念

连接点(Joinpoint)具有特定功能的方法,一般方法

切入点(Pointcut)具有共性功能的方法的统称一种称呼方式。被抽取后的代码

目标对象(Target Object)包含切入点的类

通知(Advice)将共性功能抽取走,制作成独立的功能模块。被抽取后的公共代码

切面(Aspect)切入点与通知匹配的一种情况

AOP切面描述的一组切入点与通知方法之间的绑定关系

一个AOP配置中,可以使用多个切面

 

AOP代理(AOP Proxy):运行过程使用AOP创建代理对象进行运行,运行过程中将抽取的功能执行,该过程由AOP自动完成,所以称为AOP代理

织入(Weaving):称将抽取的功能加入原始功能运行的整个过程叫做织入(动态)织入控制的是字节码

引入(Introduction):完整的方法或成员变量抽取加入的过程叫做引入

工作流程(开发者完成)

开发时,制作功能类(目标对象),将其中的方法中的通用功能(通知)抽取出来,制作成独立的类(通知类),原始目标对象中的方法(切入点)不再进行通用功能的制作。该功能被抽取后,无法完成完整的业务逻辑,需要在运行时将通知加入到对应的位置执行。为了完成此操作,必须将切入点与通知进行一对一的对应关系设定(切面)

运行流程(AOP完成)

运行时,Spring一直监控切面中所配置的切入点对应的方法的执行,发现执行了该方法,使用AOP的代理机制,创建代理对象(AOP代理),将原始方法(切入点)通知进行融合,形成一个完整的业务逻辑进行运行,此过程称为织入

 


0 0