现在的位置: 首页 > 综合 > 正文

Spring装配各种集合类型的属性

2013年03月21日 ⁄ 综合 ⁄ 共 2317字 ⁄ 字号 评论关闭

集合类型一般包括:set<string>(new HashSet<String>())、List<String>(new ArrayList<String>())、Properties(new Properties())、Map<String,String>(new HaspMap<String,String>())这四种。

主要配置如下:
<bean id="personService" class="cn.cast.service.impl.PersonServiceBean">
               <property name="set">
                   <set>
                       <value>set一个</value>
                       <value>set二个</value>
                       <value>set三个</value>
                   </set>


               </property>
               <property name="list">
                   <list>
                       <value>list一个</value>
                       <value>list二个</value>
                       <value>list三个</value>
                   </list>
               </property>
               <property name="prop">
                   <props>
                       <prop key="key1">value1</prop>
                       <prop key="key2">value2</prop>
                       <prop key="key3">value3</prop>
                   </props>


               </property>
               <property name="map">
                   <map>
                       <entry key="key-1" value="value-1"></entry>
                       <entry key="key-2" value="value-2"></entry>
                       <entry key="key-3" value="value-3"></entry>
                   </map>


               </property>
            </bean>
这里要注意下各个集合类型添加值的属性,prop中一个key属性,ertry中有key和value属性。

测试类实现方法:
@Test public void instanceSpring(){
        AbstractApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
        PersonServiceBean personService = (PersonServiceBean)ctx.getBean("personService");
        System.out.println("========set============");
        for(String vae:personService.getSet()
){
            System.out.println(vae);
        }
        System.out.println("========list===========");
        for(String value : personService.getList()
){
            System.out.println(value);
        }
        System.out.println("========properties===========");
        for(Object
key : personService.getProp().keySet()

){
            System.out.println(key+"="+ personService.getProp().getProperty((String)key)
);
        }
        System.out.println("========map===========");
        for(
String
key : personService.getMap().keySet()

){
            System.out.println(key+"="+ personService.getMap().get(key)
);
        }
在这里getProp().getProperty()得到key的值,不能直接用get()取得,而且key是object类型需要转化String类型才能被调用。
Map中就可直接get(key)取得key的值。

遍历Properties集合key时返回的对象为object。
可以简单的说成Properties存的对象集合
Map存的String类型的集合

抱歉!评论已关闭.