SomeInterfaceの実装がいくつかあります。問題は、SomeInterfaceのすべての実装でexecuteSomethingメソッドのポイントカットとは何かです。AspectJ - インタフェース実装のメソッドのポイントカット
1
A
答えて
1
このメソッドのポイントカットは、メソッド実行ポイントコールかメソッドコールポイントカットのいずれかです。
execution(public String SomeInterface+.executeSomething(String))
call(public String SomeInterface+.executeSomething(String))
これらのポイントカットタイプのいくつかの説明:
- これらの両方のポイントカットの意味で使用されるタイプのパターン:
String
返すすべてのパブリックメソッドあなたの条件のための最も特定のポイントカットは次のようになります。 またはそれのサブタイプで定義され、executeSomething
という名前で、String
引数の1つを受け入れます。これは、あなたのケースで定義できる最も特殊な型パターンであり、String SomeInterface.executeSomething(String)
メソッドの実装と一致します。 - 実行型ポイントカットは特定のメソッド本体が
- コールタイプポイントカットを実行したときに対応する特定のメソッドが呼び出されたときに対応する点を結ぶ一致点を結ぶ一致する(すなわち、参加ポイントが発呼者側に配置されている)
実行タイプのポイントカットが頻繁に使用されますが、コールタイプのポイントカットも非常に便利な場合もあります。
AspectJ Programming GuideのThe AspectJ Language/Join Points and Pointcutsの章を参照してください。
+0
徹底的な回答 – Lenar
関連する問題
- 1. aspectjクロススレッドのポイントカット
- 2. Spring CrudRepositoryのAspectJポイントカット
- 3. Spring Security/AspectJのポイントカット
- 4. Jackson DeserializationContextのAspectJポイントカット式reportMappingException
- 5. @AspectJアノテーションを使用してインターフェイスメソッドをオーバーライドするメソッドのポイントカット
- 6. AspectJ Spring AOPポイントカットのHibernateエンティティ関数
- 7. AspectJ - 継承された 'parents'クラスのポイントカット
- 8. aspectj/springの動的ポイントカット式Aop
- 9. aspectjオブジェクト変数代入のポイントカット
- 10. @Testでアノテーションされたメソッドと一致するAspectJポイントカット
- 11. の実装インタフェース
- 12. AspectJ - インターフェイスインスタンス変数をポイントカットに渡す
- 13. インタフェースの実装 - パラメータ
- 14. インタフェースServiceConnectionの実装
- 15. インタフェースの実装の指定
- 16. インタフェースの実装方法は
- 17. AspectJ ITDs:汎用インターフェースの実装
- 18. インタフェースを実装し、
- 19. OOP-デザイン:インタフェース・メソッドの実装に依存するパラメータ
- 20. インタフェースの[[廃止予定]]メソッドを実装できません
- 21. インタフェースの正しい実装を返す拡張メソッド?
- 22. N個のインタフェースを実装するメソッド引数
- 23. AspectJのポイントカットが外部クラスとLTWで動作しない
- 24. aspectj eclipseプラグインでポイントカットとアドバイスの署名を生成する
- 25. aspectj特定の注釈パラメータ値に一致するポイントカット
- 26. AspectJのポイントカットでパラメータ数を定義する
- 27. Javaリフレクション:実装汎用インタフェース
- 28. 階層インタフェースと実装
- 29. 明示的インタフェース実装への暗黙インターフェイス実装のリファクタリング
- 30. インタフェース実装のための「略称」ショートカット?
あなたは本当にインターフェイスのすべての実装に興味がありますか?「名前がXのメソッドを持つすべてのクラスは十分でしょうか?もしそうなら、あなたは@Pointcut( "execute * *。*。executeSomething(..))") 'を使うことができます。 –
「名前がXのメソッドを持つすべてのクラス」は、他のクラスがない(インターフェイスの実装ではない)場合はOKです。 ご提案いただきありがとうございますが、理想的にはすべての実装が必要です – Lenar