2015-12-16 52 views
0

我是Spring的新手。我知道AfterAdvice會導致after方法執行,無論target方法是完成還是退出,但我無法找到任何示例。如何在java中使用AfterAdvice接口

由於AfterAdvice是一個標記接口,我不知道我需要在它的實現類中定義哪種方法。

謝謝,

回答

0

您不必直接實現這些接口。相反,您可以使用

  1. 使用@After標註來標記你想它的方法被調用。
  2. 使用Spring XML bean配置aop:advice勸告方法後聲明

但是,如果你選擇當你表示要使用ProxyFactryBean是使用ProxyFactryBean是

,你可以聲明這樣的XML

<bean id="interceptor" 
    class="yourimplementation"> 
</bean> 
<bean id="setterAdvisor" 
    class="org.springframework.aop.support.RegexpMethodPointcutAdvisor"> 
    <property name="advice"> 
     <ref bean="interceptor"/> 
    </property> 
    <property name="patterns"> 
     <list> 
      <value>.*set.*</value> 
     </list> 
    </property> 
</bean> 
<bean id="person" 
    class="org.springframework.aop.framework.ProxyFactoryBean"> 
    <property name="proxyInterfaces" value="com.mycompany.Person"/> 
    <property name="target" ref="personTarget"/> 
    <property name="interceptorNames"> 
     <list> 
      <value>setterAdvisor</value> 
     </list> 
    </property> 
</bean> 

對於Java實現,沒有使用實施Advice接口。您應該執行ThrowingAdviceAfterReturningAdvice。有關更多信息,請參閱this

欲瞭解更多信息,可以參考一個coupletutorialguides在Spring AOP和玩它獲得的感覺。

+0

我想通過spring xml配置來使用它。你能否提供一個鏈接的例子,因爲我得到的例子只是AfterReeturning建議而不是AfterAdvice。 – Manish

+0

我不使用aop命名空間。我使用ProxyFactoryBean使用基本的xml配置。 – Manish

+0

嗨納特,感謝您的詳細解釋,但我的查詢是,我們可以使用AfterAdvice使用註釋所以有什麼辦法,我們也可以使用AfterAdvice(Not AfterReturningAdvice)使用xml配置。 – Manish