1、PointCut、JoinPoint
1)定義
JoinPoint(連接點)代表一個被攔截的方法
PointCut(切入點)代表了一組被攔截的方法,代表了Target
2)作用
PointCut 一次可以定義多個類的多個方法作爲攔截目標(JoinPoint),實現了對Target在方法層面的過濾,而不是對整個類進行攔截。
2、Advisor
1)定義作用
Advisor是攔截器,把advice攔截器和target目標聯繫起來。
一個advisor對象可以聯繫一個advice攔截器和多個PointCut。
2)Advisor分類
NameMatchMethodPointcutAdvisor 按方法名稱(全名)方式進行過濾
<bean id="nameAdvisor" class="org.springframework.aop.support.NameMatchMethodPointcutAdvisor">
<property name="advice" ref="myBeforeAdvice"></property>
<property name="mappedNames">
<list>
<value>function1</value>
......
</list>
</property>
</bean>
RegexpMethodPointcutAdvisor 按“包名.類名.方法名”的正則表達式方式進行過濾
<bean id="regexpAdvisor" class="org.springframework.aop.support.RegexpMethodPointcutAdvisor">
<property name="advice" ref="myAfterReturningAdvice"></property>
<property name="patterns">
<list>
<value>* *.*(..)</value>
......
</list>
</property>
</bean>