读书人

Spring中AOP的3个主要概念

发布时间: 2013-12-28 22:19:33 作者: rapoo

Spring中AOP的3个重要概念

在理解了Spring的AOP后,需要重点理解的三个概念是:Pointcut ? ?Advice ? Advisor

(1)切入点 ?Pointcut

? ? ? ? ? ? ? ?在介绍Pointcut之前,有必要先介绍 ?Join ?Point(连接点)概念。

? ? ? ? ? ? ? ? ? ? ? ? ? 连接点:程序运行中的某个阶段点,比如方法的调用、异常的抛出等。比如方法doSome();

? ? ? ? ? ? ? ?Pointcut是JoinPoint的集合,它是程序中需要注入Advice 的位置的集合,指明Advice要在什么样的条件下才能被触发。

? ? ? ? ? ? ? ? org.springframework.aop.Pointcut接口用来指定到特定的类和方法,

? ? ? ? ? ? ? ? ?//源代码

? ? ? ? ? ? ? ? ? ?public Interface Pointcut{

? ? ? ? ? ? ? ? ? ? ? //用来将切入点限定在给定的目标类中

? ? ? ? ? ? ? ? ? ? ?ClassFilter ? getClassFilter();

? ? ? ? ? ? ? ? ? ? ? //用来判断切入点是否匹配目标类的给定的方法

? ? ? ? ? ? ? ? ? ? ? MethodMatcher ?getMethodMatcher();

? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? ? ? ? ? Pointcut ? TRUE=TruePointcut.INSTANCE;

? ? ? ? ? ? ? ? ? ?}

? ? ? ? ? ? ? ? ? ?在Pointcut接口中主要有两个接口:ClassMatcher和MethodMatcer,有利于代码的重用。

(2)通知Advice

? 它是某个连接点所采用的处理逻辑,也就是向连接点注入的代码。例如:输出的日志信息 ? 就是一个Advice

(3)Advisor

? ? ? ?Advisor是Pointcut和Advice的配置器,它包括PointcutAdvice,是将Advice注入程序中Pointcut位置的代码

?

?

?

?

?

?

?

?

?

?

读书人网 >移动开发

热点推荐