覆盖 spring xml 配置文件中列表或其他集合的默认实现

Override default implementation of list or other collections in spring xml configuration file

我观察到 spring xml 中 list 的默认实现是 ArrayList。

我试过了:

<bean id="employee" class="com.ioc.entity.Employee">
</property>
        <property name="list">
        <list value-type="java.lang.String">
        <value>ABC</value>
        <value>XYZ</value>
        </list>
        </property>
</bean>

此列表中的 getClass() 方法 returns java.util.ArrayList.

是否有任何 属性 或方法可以覆盖列表的默认实现(可能是 LinkedList 或我想要的任何列表)或任何其他集合(如地图、集合等)?

您可以导入 Spring 实用程序并使用列表-class 参考。

<?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:util="http://www.springframework.org/schema/util"
 xsi:schemaLocation="http://www.springframework.org/schema/beans
                     http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
                     http://www.springframework.org/schema/util
                     http://www.springframework.org/schema/util/spring-util-2.5.xsd">

<bean id="employee" class="com.ioc.entity.Employee">
  <property name="list">
    <util:list id="myLinkedList" value-type="java.lang.String" list-class="java.util.LinkedList">
      <value>ABC</value>
      <value>XYZ</value>
    </util:list>
  </property>
</bean>