带注释的类的子类的 @AspectJ 切入点
我正在寻找一个与类中的方法执行相匹配的切入点,该类使用特定注释对类进行子类化。优秀的 AspectJ 备忘单 帮助我创建了以下切入点:
within(@my.own.annotations.AnnotationToMatch *) && execution(* *(..))
这匹配带有 @AnnotationToMatch 的类 A 的所有方法调用,但不匹配扩展 A 的类 B 的方法。我如何匹配两者?
I'm looking for a pointcut that matches method executions in classes that subclass a class with a specific annotation. The excellent AspectJ cheat sheet helped me to create the following pointcut:
within(@my.own.annotations.AnnotationToMatch *) && execution(* *(..))
This matches all method calls of a class A that carries the @AnnotationToMatch, but not method of a class B that extends A. How can I match both?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
另一种更简单的可能性是将注释声明为 @Inherited - 因此它也适用于子类。
Another and simpler possibility is to declare the annotation as @Inherited - thus it applies to the subclasses as well.