一.复杂注入
1.定义School类
package top.wyyblog.DI3;
public class School {
private String name;
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "School [name=" + name + "]";
}
}
2.定义Some类
package top.wyyblog.DI3;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
public class Some {
private School [] schools;
private String[] myStrs;
private List<String> myList;
private Set<String> mySet;
private Map<String, Object> myMap;
private Properties myPros;
public void setSchools(School[] schools) {
this.schools = schools;
}
public void setMyStrs(String[] myStrs) {
this.myStrs = myStrs;
}
public void setMyList(List<String> myList) {
this.myList = myList;
}
public void setMySet(Set<String> mySet) {
this.mySet = mySet;
}
public void setMyMap(Map<String, Object> myMap) {
this.myMap = myMap;
}
public void setMyPros(Properties myPros) {
this.myPros = myPros;
}
@Override
public String toString() {
return "Some [schools=" + Arrays.toString(schools) + ", myStrs=" + Arrays.toString(myStrs) + ", myList="
+ myList + ", mySet=" + mySet + ", myMap=" + myMap + ", myPros=" + myPros + "]";
}
}
3.完善applicationContext.xml配置文件
<bean id="school" class="top.wyyblog.DI3.School">
<property name="name" value="极速学院"></property>
</bean>
<bean id="school2" class="top.wyyblog.DI3.School">
<property name="name" value="极速学院2"></property>
</bean>
<bean id="some" class="top.wyyblog.DI3.Some">
<property name="schools">
<array>
<ref bean="school"/>
<ref bean="school2"/>
</array>
</property>
<property name="myStrs">
<array>
<value>中国</value>
<value>北京</value>
</array>
</property>
<property name="myList">
<list>
<value>大兴</value>
<value>小星</value>
</list>
</property>
<property name="mySet">
<set>
<value>大足企业</value>
<value>20号楼</value>
</set>
</property>
<property name="myMap">
<map>
<entry key="mobile" value="123456789"/>
<entry key="QQ" value="418280718"/>
</map>
</property>
<property name="myPros">
<props>
<prop key="education">大学</prop>
<prop key="gender">男</prop>
</props>
</property>
</bean>
4.测试类
package top.wyyblog.DI3;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class TestDemo {
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext("top/wyyblog/DI3/applicationContext.xml");
Some some = (Some) context.getBean("some");
System.out.println(some);
}
}
5.输出
Some [schools=[School [name=极速学院], School [name=极速学院2]], myStrs=[中国, 北京], myList=[大兴, 小星], mySet=[大足企业, 20号楼], myMap={mobile=123456789, QQ=418280718}, myPros={gender=男, education=大学}]
二.简单注入
修改配置文件
<bean id="some" class="top.wyyblog.DI4.Some">
<property name="schools">
<array>
<ref bean="school"/>
<ref bean="school2"/>
</array>
</property>
<property name="myStrs" value="中国,北京" />
<property name="myList" value="大兴,小星" />
<property name="mySet" value="大足企业,20号楼"/>
<property name="myMap">
<map>
<entry key="mobile" value="123456789"/>
<entry key="QQ" value="418280718"/>
</map>
</property>
<property name="myPros">
<props>
<prop key="education">大学</prop>
<prop key="gender">男</prop>
</props>
</property>
</bean>