spring框架之陣列,集合(List,Set,Map),Properties等的注入
阿新 • • 發佈:2018-12-16
先編寫User類:
package com.huida.demo4; import java.util.Arrays; import java.util.List; import java.util.Map; import java.util.Properties; public class User { private String[] arrs; public String[] getArrs() { return arrs; } public void setArrs(String[] arrs) {this.arrs = arrs; } private List<String> list; public List<String> getList() { return list; } public void setList(List<String> list) { this.list = list; } private Map<String, String> map; public Map<String, String> getMap() {return map; } public void setMap(Map<String, String> map) { this.map = map; } private Properties pro; public void setPro(Properties pro) { this.pro = pro; } @Override public String toString() { return "User [arrs=" + Arrays.toString(arrs) + ", list=" + list + ", map=" + map + ", pro=" + pro + "]"; } }
1. 如果是陣列或者List集合,注入配置檔案的方式是一樣的
<bean id="user" class="com.huida.demo4.User">
<property name="arrs">
<list>
<value>美美</value>
<value>小風</value>
</list>
</property>
</bean>
2. 如果是Set集合,注入的配置檔案方式如下:
<property name="sets">
<set>
<value>哈哈</value>
<value>呵呵</value>
</set>
</property>
3. 如果是Map集合,注入的配置方式如下:
<property name="map">
<map>
<entry key="老王2" value="38"/>
<entry key="鳳姐" value="38"/>
<entry key="如花" value="29"/>
</map>
</property>
4. 如果是properties屬性檔案的方式,注入的配置如下:
<property name="pro">
<props>
<prop key="uname">root</prop>
<prop key="pass">123</prop>
</props>
</property>
在demo4.java中編寫單元測試函式:
//注入集合 @Test public void run4(){ //建立工廠,載入核心配置檔案 ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml"); //獲取物件 User user=(User) ac.getBean("user"); System.out.println(user); }
單元測試結果如下: