2010-12-19 40 views
0

我是新來的Spring AOP切入點註解,我想如何定義AOP:在MultiActionController的

  1. 我有一些MultiActionController的幫助,這是一款基於annotaion。
  2. 我在spring配置文件中定義了方法和顧問的切入點。
  3. 我從我的控制器調用該方法。

現在我的問題是:如何在控制器中定義切入點註釋?

請給我一些提示。

在此先感謝。

回答

1

AOP的重點在於您沒有在目標類中定義切入點,而是在外部方面類(或基於XML的Spring AOP,XML中)中定義切入點。

因此,如果您的控制器和方面都在相同的ApplicationContext中(並且切入點匹配控制器方法),則應該自動應用這些通知。

然而,有一個警告:

,如果你使用的接口來支持你的控制器,Spring AOP將會只工作標準(JDK代理爲主)的方式。

如果你使用的接口考慮這個照會(source):

注意
使用控制器接口(如AOP代理),確保始終如一地把所有映射註解 - 如@RequestMapping@SessionAttributes - 在控制器接口上而不是在實現類上。

如果您不需要,您必須設置proxy-target-class="true",如Proxying mechanisms部分所述。

+0

嗨,感謝您的回答。我能夠解決我的問題。問題是我的控制器是在不同的上下文中,我的aop定義在不同的應用程序上下文中。我把所有的上下文中,它開始工作。 – user545520 2010-12-20 12:42:59

+0

@ user545520那麼一個upvote和/或一個accept checkmark怎麼樣? – 2010-12-20 16:25:54

相關問題