使用 Spring,您可以拥有某种组合注释。一个突出的例子是@SpringBootApplication
-annotation,它是 @Configuration
,@EnableAutoConfiguration
和的组合@ComponentScan
。
我正在尝试获取受某个注释影响的所有 Bean,即ComponentScan
.
按照这个答案,我正在使用以下代码:
for (T o : applicationContext.getBeansWithAnnotation(ComponentScan.class).values()) { ComponentScan ann = (ComponentScan) o.getClass().getAnnotation(ComponentScan.class); ... }
这是行不通的,因为并非所有返回的 beangetBeansWithAnnotation(ComponentScan.class)
都确实用该注释进行了注释,因为那些被注释@SpringBootApplication
的(通常)不是。
现在我正在寻找某种通用的方法来检索注释的值,即使它只是作为另一个注释的一部分添加。我怎样才能做到这一点?
手掌心
jeck猫
相关分类