spring-注入對象map

一.創建項目
    項目名稱:spring092901
二.添加jar包
    commons-logging.jar
    junit-4.4.jar
    log4j.jar
    spring-beans-3.2.0.RELEASE.jar
    spring-context-3.2.0.RELEASE.jar
    spring-core-3.2.0.RELEASE.jar
    spring-expression-3.2.0.RELEASE.jar
三.添加配置文件
    1.在項目中創建conf目錄
        /conf
    2.在conf目錄下添加配置文件
        配置文件名稱:applicationContext.xml
        配置文件內容:
        <?xml version="1.0" encoding="UTF-8"?>
        <beans xmlns="http://www.springframework.org/schema/beans"
               xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
               xmlns:p="http://www.springframework.org/schema/p"
               xmlns:util="http://www.springframework.org/schema/util"
               xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd">
            
        </beans>
四.創建實體bean
    1.在src下創建包
        包名:cn.jbit.spring092901.domain
    2.在包下創建bean
        bean名稱:CountryGeneralSituation.java
        bean內容:    
        public class CountryGeneralSituation {
            private String countryName;//國家名稱
            private String womb;//發源地
            private String relic;//遺址
            //省略get and set     
        }
五.創建業務bean
    1.在src下創建包
        包名:cn.jbit.spring092901.collection
    2.在包下創建bean
        bean名稱:MapFromRef.java
        bean內容:
        public class MapFromRef {
            private Map<String,CountryGeneralSituation> map;
        
            public Map<String, CountryGeneralSituation> getMap() {
                return map;
            }
        
            public void setMap(Map<String, CountryGeneralSituation> map) {
                this.map = map;
            }
            
        }
    3.在覈心配置文件中配置bean
        <bean id="mapfromrefbean" class="cn.jbit.spring092901.collection.MapFromRef">
            <property name="map">
                <map>
                    <entry key="古印度" value-ref="indiaBean"></entry>
                </map>
            </property>
        </bean>
        
        
        <bean id="indiaBean" class="cn.jbit.spring092901.domain.CountryGeneralSituation">
            <property name="countryName" value="古印度"></property>
            <property name="womb" value="印度河、恆河流域"></property>
            <property name="relic" value="哈拉巴遺址"></property>
        </bean>
六.測試
    1.在項目中創建test目錄
        /test
    2.在test目錄下創建包
        cn.jbit.spring092901.collection
    3.在包下 創建測試類
        類名:MapFromRefTest.java
        類內容:
        public class MapFromRefTest {
            @Test
            public void testCGS(){
                ClassPathXmlApplicationContext cxac = new ClassPathXmlApplicationContext("classpath:applicationContext.xml");
                MapFromRef mfr = (MapFromRef) cxac.getBean("mapfromrefbean");
                Map map = mfr.getMap();
                CountryGeneralSituation cgs = (CountryGeneralSituation) map.get("古印度");
                System.out.println(cgs.getCountryName());
            }
        }

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