1.数组
ß测试类à
@Test
public voidfun1(){
ApplicationContext ac = newClassPathXmlApplicationContext("cn/hd/injection/applicationContext.xml");
CollectionBean collectionBean =(CollectionBean) ac.getBean("collectionBean");
Object [] arr =collectionBean.getArr();
for (Object o : arr) {
System.out.println(o);
}
ß配置文件à
<beanname="collectionBean"class="cn.hd.injection.CollectionBean">
<!--如果数组中只有一个元素,和基本类型的配置一样-->
<!--<propertyname="arr" value="1"></property>-->
<!--如果数组中不只一个元素时,用array标签包裹去写
-->
<property name="arr">
<array>
<value>张三</value>
<value>李四</value>
<refbean="car"></ref>
</array>
</property>
</bean>
2、List/set
@Test
public voidfun2(){
ApplicationContext ac = new ClassPathXmlApplicationContext("cn/hd/injection/applicationContext.xml");
CollectionBean collectionBean =(CollectionBean) ac.getBean("collectionBean");
List list = collectionBean.getList();
for (Object o : list) {
System.out.println(o);
}
}
<!--List集合中只有一个元素配置个基本类型的配置一样-->
<!--<propertyname="list" value="1" ></property>-->
<!--如果数组中不只一个元素时,用array标签包裹去写-->
<property name="list">
<list>
<value>张二</value>
<value>李四</value>
<ref bean="car"></ref>
</list>
</property>
3、Map
键值对 key key-ref value value-ref Map<K,V>
<property name="map">
<map>
<entry key="name"value="杨东辉"></entry>
<entry key="user"value-ref="user2"></entry>
<!--<entrykey-ref=""></entry>-->
</map>
</property>
@Test
public voidfun3(){
ApplicationContext ac = newClassPathXmlApplicationContext("cn/hd/injection/applicationContext.xml");
CollectionBean collectionBean =(CollectionBean) ac.getBean("collectionBean");
Map map = collectionBean.getMap();
String name = (String)map.get("name");
System.out.println(name);
User user = (User)map.get("user");
System.out.println(user);
}
4、properties
<propertyname="properties">
<props>
<propkey="driverClass">com.</prop>
<propkey="jdbcUrl">jdbc://localhost:3306</prop>
<propkey="user">root</prop>
</props>
</property>
@Test
public voidfun4(){
ApplicationContext ac = newClassPathXmlApplicationContext("cn/hd/injection/applicationContext.xml");
CollectionBean collectionBean =(CollectionBean) ac.getBean("collectionBean");
Properties properties =collectionBean.getProperties();
String driverClass = (String)properties.get("driverClass");
System.out.println(driverClass);
String jdbcUrl = (String)properties.get("jdbcUrl");
System.out.println(jdbcUrl);
String user = (String)properties.get("user");
System.out.println(user);
}
packagecn.hd.injection;
importjava.util.List;
import java.util.Map;
import java.util.Properties;
/*复杂注入*/
public class CollectionBean {
private Object [] arr;
private List list;
private Map map;
private Properties properties;
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 getProperties() {
return properties;
}
public void setProperties(Propertiesproperties) {
this.properties = properties;
}
}