Spring 框架(四)(依賴注入 二)

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>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章