Java <;列表>;春天的工作
我有一个收集乐器的地方;在SomeClass.java中,我在temp.xml文件中声明了SomeClass.java类的bean。在xml中,我向集合添加了两个字符串对象 我的问题是集合是一个接口,所以我不能实例化它,列表也是一个接口,所以我认为我们不能这样做Java <;列表>;春天的工作,java,xml,spring,collections,dependency-injection,Java,Xml,Spring,Collections,Dependency Injection,我有一个收集乐器的地方;在SomeClass.java中,我在temp.xml文件中声明了SomeClass.java类的bean。在xml中,我向集合添加了两个字符串对象 我的问题是集合是一个接口,所以我不能实例化它,列表也是一个接口,所以我认为我们不能这样做 Collection<String> someCollection = new List<String>(); Collection someCollection=newlist(); 我想知道当我们在xm
Collection<String> someCollection = new List<String>();
Collection someCollection=newlist();
我想知道当我们在xml文件中使用list标记时java代码是如何工作的。这意味着对象是否存储在链表、数组列表或某种类型的列表中?这取决于
ApplicationContext
。每个实现可能不同,但您可以确定结果是一个列表
。根据:
另一个自定义名称空间实用程序用于创建列表。第一粒豆子
定义与ListFactoryBean示例相同,只是它是一个
短一点,更容易阅读。第二个bean定义是
相同,只是它使用list class属性指定列表的内容
要使用的实现。如果未使用list类属性,则
ApplicationContext将选择实现类
对于,SpringIoC容器使用ArrayList类生成对象。类似地,它使用LinkedHashSet,它使用LinkedHashMap。对,我理解它是一种列表类型,但在第一种情况下,我们不指定列表为任何特定类型,它将是哪种类型的列表?列表标记的默认行为是什么?@user1009091:对执行实例化的代码段进行了注释;)
<util:list id="messageUtilList">
<ref bean="stringMessage01"/>
<ref bean="stringMessage02"/>
<value>Spring is fun to learn.</value>
</util:list>
<util:list id="messageUtilLinkedList"
list-class="java.util.LinkedList">
<ref bean="stringMessage01"/>
<ref bean="stringMessage02"/>
<value>Spring is fun to learn.</value>
</util:list>
if (this.targetListClass != null) {
result = (List) BeanUtils.instantiateClass(this.targetListClass);
}
else {
result = new ArrayList(this.sourceList.size());
}