Spring命名规则
1.继承AnnotationBeanNameGenerator
public class MyBeanNameGenerator extends AnnotationBeanNameGenerator {
@Override
protected String buildDefaultBeanName(BeanDefinition definition) {
String beanClassName = definition.getBeanClassName();
Assert.state(beanClassName != null, "No bean class name set");
//后面写自己的逻辑
String shortClassName = ClassUtils.getShortName(beanClassName);
return Introspector.decapitalize(shortClassName);
}
}
2.重新引入生产规则
@Configuration()
@ComponentScan(value = "com",nameGenerator = MyBeanNameGenerator.class)
public class Spring {
}
这样就可以根据自己的规则生成相应的策略了。