关于spring-bean中集合属性注入的标签可以混用解析(Array、List、Set)(Map、Properties)
public class User {
private List<String> list;
private Set<String> set;
private String[] strs;
// setter getter 方法省略
}
<bean id="user" class="com.company.User">
<property name="list">
//list集合中使用set 标签
<set>
<value>A1</value>
<value>A2</value>
<value>A3</value>
</set>
</property>
//set集合中使用 array 标签
<property name="set">
<array>
<value>B1</value>
<value>B2</value>
<value>B3</value>
</array>
</property>
//数组中使用 list标签
<property name="strs">
<list>
<value>C1</value>
<value>C2</value>
<value>C3</value>
</list>
</property>
</bean>
为什么array,list,set标签可以混用呢?因为这三者的结构是一样的。
同样,Map与Properties结构相同,者两者的标签也快可以混用。
<property name="map">
// 在Map中,使用Properties标签
<props>
<prop key="k1">v1</prop>
<prop key="k2">v2</prop>
<prop key="k3">v3</prop>
</props>
</property>
<property name="properties">
// 在Properties 使用Map标签
<map>
<entry key="k1" value="v1"></entry>
<entry key="k2" value="v2"></entry>
<entry key="k3" value="v3"></entry>
</map>
</property>