实体类为
public class Collection { private Object[] arr; private List list; private Map map; private Properties prop; public Object[] getArr() { return arr; } public void setArr(Object[] arr) { this.arr = arr; } public List getList() { return list; } public void setList(List list) { this.list = list; } public Map getMap() { return map; } public void setMap(Map map) { this.map = map; } public Properties getProp() { return prop; } public void setProp(Properties prop) { this.prop = prop; } @Override public String toString() { return "Collection{" + "arr=" + Arrays.toString(arr) + ", list=" + list + ", map=" + map + ", prop=" + prop + '}'; } }
数组、list、map等复杂类型的注入方法
1、当数组中只有一个元素或一个对象的时候,可以使用基本类型的注入方法,当唯一的元素为基本类型的时候使用value,为引用类型的时候使用ref,其他list、map复杂类型同理。
<bean name="collection" class="entity.Collection">
<property name="arr" value="jerry"></property>
</bean>
当数组中含有多个元素的时候,通过如下方式书写配置文件
<property name="arr"> <array> <value>Tom</value> <value>Jerry</value> <ref bean="user"></ref> </array> </property>
List类型注入
1、当List集合中只有一个元素或一个对象的时候,可以使用基本类型的注入方法,当唯一的元素为基本类型的时候使用value,为引用类型的时候使用ref,其他list、map复杂类型同理。
<property name="list" value="jack"></property>
当List集合中含有多个元素的时候,通过如下方式书写配置文件
<property name="list" > <list> <value>1</value> <value>2</value> <ref bean="car"></ref> </list> </property>
Map类型注入
<property name="map" > <map> <entry key="url" value="www.baidu.com"></entry> <entry key="user" value-ref="user"></entry> <entry key-ref="user" value-ref="car"></entry> </map> </property>
properties类型注入
<property name="prop"> <props> <prop key="key">value</prop> <prop key="password">123</prop> </props> </property>
当数组中含有多个元素的时候,通过如下方式书写配置文件