私は春AOPに新しいですが、私はMultiActionControllerを持って:MultiActionController
- にいくつかの助けをしたい、これがベースannotaionです。
- 私はスプリング構成ファイルのメソッドとアドバイザーのポイントカットを定義しました。
- 私はコントローラからそのメソッドを呼び出しています。
私の質問は次のとおりです。コントローラーでポイントカット注釈を定義する方法は?
いくつかのヒントを教えてください。
ありがとうございました。
私は春AOPに新しいですが、私はMultiActionControllerを持って:MultiActionController
私の質問は次のとおりです。コントローラーでポイントカット注釈を定義する方法は?
いくつかのヒントを教えてください。
ありがとうございました。
AOPのポイントは、ターゲットクラスではなく、外部アスペクトクラス(またはXMLベースのSpring AOPの場合、XML)でポイントカットを定義することです。
コントローラと、同じApplicationContext内のアスペクトを持っている場合(ポイントカットはコントローラメソッドと一致します)、アドバイスは自動的に適用されます。あなたのコントローラをバックアップするためのインターフェイスを使用する場合のSpring AOPは、標準(JDKプロキシベース)のように動作します
:
ただし、注意点があります。
あなたはインタフェースがこのノート(source)を考慮使用しない場合:コントローラ・インタフェース(AOPのプロキシ処理用など)、一貫してすべてのマッピング注釈を入れて確認して使用する場合
注
- などを@RequestMapping
および@SessionAttributes
- 実装クラスではなくコントローラインターフェイス上。
また、そうでない場合は、Proxying mechanismsの説明に従ってproxy-target-class="true"
を設定する必要があります。
こんにちは、私の問題を解決することができました。私のコントローラは異なるコンテキストにあり、私のaop定義は異なるアプリケーションコンテキストにあります。 – user545520
@ user545520さて、upvoteや受け入れチェックマークはどうですか? –