1.Spring 注入内部
2.Spring注入集合
1.Spring 注入内部
package dc.com;
public class Cat {
public Cat() {
System.out.println("this is CatClass....");
}
public void check() {
System.out.println("this is CatMe.....");
}
}
package dc.com;
public class Dog {
private Cat cat;
public Cat getCat() {
return cat;
}
public void setCat(Cat cat) {
System.out.println("this is catclassset.....");
this.cat = cat;
}
public void check(){
cat.check();
}
}
package dc.com;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class test {
public static void main(String[] args) {
ApplicationContext applicationContext=new ClassPathXmlApplicationContext("bean.xml");
Dog dog= (Dog) applicationContext.getBean("dog");
dog.check();
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<!-- Definition for textEditor bean using inner bean -->
<bean id="dog" class="dc.com.Dog">
<property name="cat">
<bean id="cat" class="dc.com.Cat"/>
</property>
</bean>
</beans>
2.Spring注入集合
传递多个值,如List、Set、Map、Properties等。
package dc.com;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import java.util.Set;
public class CollectionEntily {
List list;
Set set;
Map map;
Properties properties;
public List getList() {
System.out.println("==="+list);
return list;
}
public void setList(List list) {
this.list = list;
}
public Set getSet() {
System.out.println("===="+set);
return set;
}
public void setSet(Set set) {
this.set = set;
}
public Map getMap() {
System.out.println("==="+map);
return map;
}
public void setMap(Map map) {
this.map = map;
}
public Properties getProperties() {
System.out.println("==="+properties);
return properties;
}
public void setProperties(Properties properties) {
this.properties = properties;
}
}
package dc.com;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class TestCollection {
public static void main(String[] args) {
ApplicationContext applicationContext=new ClassPathXmlApplicationContext("bean.xml");
CollectionEntily collectionEntily= (CollectionEntily) applicationContext.getBean("collectionEntily");
collectionEntily.getList();
collectionEntily.getSet();
collectionEntily.getMap();
collectionEntily.getProperties();
}
}
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<!-- Definition for textEditor bean using inner bean -->
<bean id="dog" class="dc.com.Dog" lazy-init="true">
<property name="cat">
<bean id="cat" class="dc.com.Cat"/>
</property>
</bean>
<bean id="collectionEntily" class="dc.com.CollectionEntily">
<property name="list">
<list>
<value>ddd</value>
<value>fff</value>
</list>
</property>
<property name="set">
<set>
<value>sss</value>
<value>eee</value>
</set>
</property>
<property name="map">
<map>
<entry key="1" value="kkk"></entry>
<entry key="2" value="eee"></entry>
</map>
</property>
<property name="properties">
<props>
<prop key="one">ppp</prop>
<prop key="two">rrr</prop>
</props>
</property>
</bean>
</beans>