Wetts's blog

Stay Hungry, Stay Foolish.

0%

依赖注入-XML配置-Bean的命名

id

一般情况下,在配置一个Bean时,需要为其指定一个id属性作为Bean的名称。id在IoC容器中必须是唯一的,此外id的命名需要满足XML对id的命名规范(id是XML规定的特殊属性):必须以字母开始,后面可以是字母、数字、连字符、下划线、句号、冒号等完整结束(full stops)的符号,逗号和空格这些非完整结束符是非法的。

name

但是如果用户希望用到一些特殊字符对进行Bean命名,可以使用的name属性进行命名,name属性没有字符上的限制,几乎可以用任何字符。

id和name都未指定

Spring自动将全限定类名作为Bean的名称。

如果存在多个实现类相同的匿名。第一个Bean通过getBean(“com.wetts.Car”)获取;第二个Bean通过getBean(“com.wetts.Car#1”)获得;第三个通过getBean(“com.wetts.Car#2”)获得。

相同id或者相同name

Spring配置文件不允许出现两个相同id的,但却可以出现两个相同name的

如果有多个name相同的,通过getBean(beanName)获取Bean时,将返回最后声明的那个Bean,原因是后面的Bean覆盖了前面同名的Bean。