• spring util list


    spring 3.0 after

    <util:list/>元素

    借助<list/>元素,开发者能够定义java.util.List集合。下面摘录了list.xml中的配置信息。

    1. <bean id="abstractCollectionBean" abstract="true">  
    2.     <property name="list">  
    3.         <list>  
    4.             <value>list1</value>  
    5.             <value>list2</value>  
    6.         </list>  
    7.     </property>  
    8. </bean>  
    9.  
    10. <bean id="collectionBean" class="test.CollectionBean"   
    11.         parent="abstractCollectionBean">  
    12.     <property name="list">  
    13.         <list merge="true" value-type="java.lang.String">  
    14.             <value>list1</value>  
    15.             <idref local="collectionBean"/>  
    16.             <null></null>  
    17.         </list>  
    18.     </property>  
    19. </bean> 

    其中,value-type属性指定存入list的默认Java类型。

    不幸的是,在某种程度上,<list/>元素只是一种内部Bean,同一<list/>元素不能够起到复用的作用。相比之下,借用ListFactoryBean对象,开发者能够构建出可供复用的List对象。下面展示了配置示例。此时,targetListClass属性用于指定List的具体类型,而sourceList属性用于指定List中的具体内容。

    1. <bean id="list" class="org.springframework.beans.
      factory.config.ListFactoryBean"
       >  
    2.     <property name="targetListClass" value="java.util.ArrayList"/>  
    3.     <property name="sourceList">  
    4.         <list>  
    5.             <value>first</value>  
    6.             <value>second</value>  
    7.             <value>three</value>  
    8.             <value>four</value>  
    9.         </list>  
    10.     </property>  
    11. </bean> 

    为简化ListFactoryBean的使用,开发者可以启用<util:list/>元素,示例配置如下。

    1. <util:list id="listUtil" list-class="java.util.ArrayList">  
    2.     <value>first</value>  
    3.     <value>second</value>  
    4.     <value>three</value>  
    5.     <value>four</value>  
    6. </util:list> 

  • 相关阅读:
    互联网协议入门详解(转)
    文件流结尾的EOF详解
    数字签名是什么?
    SSL/TLS协议运行机制的概述(转)
    图解SSL/TLS协议(转)
    RSA算法原理(转)
    HTML代码简写法:Emmet和Haml(转)
    HTML Email 编写指南(转)
    PHP CodeBase: 判断用户是否手机访问
    Spring Data JPA之Derived query
  • 原文地址:https://www.cnblogs.com/signheart/p/6609645.html
Copyright © 2020-2023  润新知