在使用类注解存储Bean后,在获取Bean对象时,Bean对象的命名是怎样的呢?为什么有时候我们输入类型的小写可以获取到,为什么有的时候这样做获取不到呢?
Teacher teacher = context.getBean("teacher",Teacher.class);
如上述代码所示,当类名的首字母大写,第二个字母小写的时候,默认类名首字母小写就能获取到Bean对象。
如“Teacher”类使用teacher对象名可以获取到;
UConfig uConfig = context.getBean("uConfig",UConfig.class);
此时这种写法就无法获取到Bean对象了,这是为什么呢?
查看一下Bean生成名称的源代码:
所以,关于“UConfig”类Bean对象的获取应该是:
UConfig uConfig = context.getBean("UConfig",UConfig.class);
总结:
如果首字母是大写,第二个字母是小写,那么Bean的名称就是类名小写;
如果不满足首字母大写和第二个字母小写的情况,那么Bean的名称就为原类名