spring 框架中通过 <context:component-scan base-package="com.cai" /> 可以指定扫描包框架中的类,关键代码是
ClassPathScanningCandidateComponentProvider provider =
new ClassPathScanningCandidateComponentProvider(false);
provider.addIncludeFilter(new AnnotationTypeFilter(Component.class));
String basePackage = "com.cai";
Set<BeanDefinition> components = provider.findCandidateComponents(basePackage);
for (BeanDefinition component : components) {
System.out.printf("Component: %s\n", component.getBeanClassName());
}
上面代码通过component注解可以过滤basePackage下的类