zoukankan      html  css  js  c++  java
  • bean中集合属性的配置

      在实际的开发中,有的bean中会有集合属性,如下:

    package com.sevenhu.domain;
    
    import java.util.List;
    
    /**
     * Created by hu on 2016/3/31.
     */
    public class RichMen {
        private List<Car> cars;
    
        public void setCars(List<Car> cars) {
            this.cars = cars;
        }
    }
    

     那么集合属性的配置如下:

           <bean id="richMan1" class="com.sevenhu.domain.RichMen">
                  <property name="cars">
                         <!--使用list集合来装配集合属性-->
                         <list>
                                <ref bean="car1"/>
                                <ref bean="car2"/>
                         </list>
                  </property>
           </bean>
    

      或还可以如下配置,将集合属性在外部配置,可以实现共享,如下:

           <!--声明集合类型的bean-->
           <util:list id="cars">
                  <ref bean="car1"/>
                  <ref bean="car2"/>
           </util:list>
           <bean id="richMan2" class="com.sevenhu.domain.RichMen">
                  <property name="cars" ref="cars"></property>
           </bean>
    

      那么Map类型的集合属性的配置过程如下,首先,建立一个含有Map类型集合属性的bean类:

    package com.sevenhu.domain;
    
    import org.springframework.context.ApplicationContext;
    import org.springframework.context.support.ClassPathXmlApplicationContext;
    
    import java.util.Iterator;
    import java.util.Map;
    import java.util.Set;
    
    /**
     * Created by hu on 2016/3/31.
     */
    public class MapPropertyTest {
        private Map nameAndAge;
    
        public void setNameAndAge(Map nameAndAge) {
            this.nameAndAge = nameAndAge;
        }
        @Override
        public String toString(){
            String str="";
            String tempStr="";
            Set<Map.Entry> entrySet=nameAndAge.entrySet();
            Iterator<Map.Entry> iterator=entrySet.iterator();
            while (iterator.hasNext()){
                Map.Entry entry=iterator.next();
                tempStr= entry.getKey()+":"+entry.getValue();
                str=str+tempStr+"
    ";
            }
           return str;
        }
        public static void main(String[] args){
            ApplicationContext applicationContext=new ClassPathXmlApplicationContext("beans.xml");
            MapPropertyTest mapPropertyTest= (MapPropertyTest) applicationContext.getBean("mapPropertyTest");
            System.out.println(mapPropertyTest);
        }
    }
    

      然后配置代码如下:

           <!--Map类型的集合属性-->
           <bean id="mapPropertyTest" class="com.sevenhu.domain.MapPropertyTest">
                  <property name="nameAndAge">
                         <map>
                                <entry>
                                       <key>
                                              <value>hujingwei</value>
                                       </key>
                                       <value>23</value>
                                </entry>
                         </map>
                  </property>
           </bean>
    

      

  • 相关阅读:
    【个人杂谈】MacBook Pro的使用心得
    【网页加速】lua redis的二次升级
    使用Openresty加快网页速度
    中间件——canal小记
    Java面试总结(二)
    RedissonLock分布式锁源码分析
    面试总结
    Spring AOP小记
    谈谈个人网站的建立(八)—— 缓存的使用
    Kafka、Logstash、Nginx日志收集入门
  • 原文地址:https://www.cnblogs.com/hujingwei/p/5342181.html
Copyright © 2011-2022 走看看