SpringAOP之Advisor方式

1、PointCutJoinPoint

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>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章