假设我想找到所有用@Controller 注释的类,我会创建这个切入点:
@Pointcut("within(@org.springframework.stereotype.Controller *)")
public void controllerPointcut() {}
Run Code Online (Sandbox Code Playgroud)
但是找不到那些用@RestController 注释的控制器。因为 RestController 本身是用@Controller 注释的。
关于如何查找使用 @Controller 或 @RestController 注释的类而无需创建两个 Pointcuts 的任何想法?
======编辑====我在这里的真正意图如下:
父注释:
public @interface ParentAnnotation {}
Run Code Online (Sandbox Code Playgroud)
子注释(用@ParentAnnotation 注释):
@ParentAnnotation
public @interface ChildAnnotation {}
Run Code Online (Sandbox Code Playgroud)
A类:
@ParentAnnotation
public class MyClassA {}
Run Code Online (Sandbox Code Playgroud)
B类:
@ChildAnnotation
public class MyClassB {}
Run Code Online (Sandbox Code Playgroud)
现在我想通过@ParentAnnotation 找到MyClassA 和MyClassB。找到MyClassA是没有问题的,但是MyClassB是用@ParentAnnotation间接注释的,有没有通用的方法来处理这种情况?