⑥Ioc不管通过哪种方式注入依赖的属性,都需要为方法指定具体的参数值为属性赋值。属性有不同的类型,可以分为三种情况:
1.基本类型和String类型:
很多时候,属性或者构造方法的参数都是基本数据类型或者Stirng类型,基本数据类型包括byte、short、int、long、float、double、char、boolean以及对应的包装器类。当值的类型是基本类型或者Stirng类型时,可以使用<value>元素配值;
2其他bean类型
如果属性是其他bean,在这种情况下,需要先实例化这个bean,后再引用这个bean的类通过ref引用这个bean;
3null值
<property name="name">
<null></null>或者<null/>
</property>
值得注意的是,
<property name="name">
<value></value>
</property>配置的是空值而不是空字符串。
⑦集合类型属性配置
当类的属性是集合类型时候,也可以使用Ioc进行注入。常见的集合类型有四种,即List,Map,Set和Properties,以下介绍四种集合类型的配置方式:
1.<List>
如果属性是list或者是数组类型时,Ioc将使用<List>元素进行配置。<List>元素中的子元素可以根据该list或者数组对象中存储的元素类型进行选择,可以是<value>、<ref>、<null>、<list>等。
2.<set>
当集合采用set类型的集合类时,则采用<set>元素进行配置,用法与<list>相同。
3.<map>
当集合采用Map类型的映射类时,则采用<map>元素经装配;
4.<props>
如果集合采用properties类型,则使用<props>进行配置。每个条目只接受字符串类型的值,不可以是其他类型。