public static void main(String[] args) throws IOException, ClassNotFoundException {
Set<BeanDefinition> candidates = new LinkedHashSet<>();
ResourcePatternResolver resourcePatternResolver = new PathMatchingResourcePatternResolver();
Resource[] resources = resourcePatternResolver.getResources("classpath*:com/my/*/*.**");
MetadataReaderFactory metadata=new SimpleMetadataReaderFactory();
for(Resource resource:resources) {
MetadataReader metadataReader=metadata.getMetadataReader(resource);
ScannedGenericBeanDefinition sbd = new ScannedGenericBeanDefinition(metadataReader);
sbd.setResource(resource);
sbd.setSource(resource);
candidates.add(sbd);
}
for(BeanDefinition beanDefinition : candidates) {
String classname=beanDefinition.getBeanClassName();
Controller c=Class.forName(classname).getAnnotation(Controller.class);
Service s=Class.forName(classname).getAnnotation(Service.class);
Component component=Class.forName(classname).getAnnotation(Component.class);
if(c!=null ||s!=null ||component!=null)
System.out.println(classname);
}
}
Spring-扫描注解原理ZJ
猜你喜欢
转载自blog.csdn.net/u011624903/article/details/80111628
今日推荐
周排行