二、通过类型获取bean
从IOC容器中获取bean时,除了通过id值获取,还可以通过bean的类型获取。但如果同一个类型的bean在XML文件中配置了多个,则获取时会抛出异常,所以同一个类型的bean在容器中必须是唯一的。
HelloWorld helloWorld =
cxt.getBean(HelloWorld. class);
|
三、给bean的属性赋值
1.赋值的途经
通过bean的setXxx()方法赋值
HelloWorld中使用的就是这种方式
http://s15/mw690/003zs2uIzy7nKboincade&690
②通过bean的构造器赋值
http://s11/mw690/003zs2uIzy7nKbVkm8yfa&690
●通过索引值指定参数位置
http://s1/mw690/003zs2uIzy7nKbVjti870&690
●通过类型不同区分重载的构造器
http://s4/mw690/003zs2uIzy7nKbVReaD53&690
③给bean的级联属性赋值
http://s1/mw690/003zs2uIzy7nKbW038Q70&690
④p名称空间
为了简化XML文件的配置,越来越多的XML文件采用属性而非子元素配置信息。
Spring从2.5版本开始引入了一个新的p命名空间,可以通过元素属性的方式配置Bean的属性。
使用p命名空间后,基于XML的配置方式将进一步简化。
http://s1/mw690/003zs2uIzy7nKc3PFi820&690
http://s7/mw690/003zs2uIzy7nKc3TTv056&690
2. 可以使用的值
①字面量
[1]可以使用字符串表示的值,可以通过value属性或value子节点的方式指定
[2]基本数据类型及其封装类、String等类型都可以采取字面值注入的方式
[3]若字面值中包含特殊字符,可以使用把字面值包裹起来
②null值
http://s3/mw690/003zs2uIzy7nKccEFj442&690
③外部已声明的bean
http://s11/mw690/003zs2uIzy7nKcdgbrAaa&690
④内部bean
当bean实例仅仅给一个特定的属性使用时,可以将其声明为内部bean。内部bean声明直接包含在或元素里,不需要设置任何id或name属性
内部bean不能使用在任何其他地方
http://s11/mw690/003zs2uIzy7nKcdhpWi4a&690
3.集合属性
在Spring中可以通过一组内置的XML标签来配置集合属性,例如:,或
加载中,请稍候......