是否可以创建一个具有Spring配置的集合? [英] Is it possible to create a collections with Spring configuration?
本文介绍了是否可以创建一个具有Spring配置的集合?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
假设我有一个类 MyClass
,可以使用 String
来实例化它,类。
Suppose I have a class MyClass
which can be instantiated either with String
or it have predefined static instances inside a class.
这样:
public class MyClass {
public final static MyClass A = new MyClass("A");
public final static MyClass B = new MyClass("B");
public final static MyClass C = new MyClass("C");
...
public MyClass(String name) {
...
}
}
有可能在Spring config中创建一个 ArrayList< MyClass>
像
Is it possible to create an ArrayList<MyClass>
bean in Spring config somehow? Something like
<bean id="sequence" class="...ArrayList">
<member class="...MyClass" value="A"/>
<member ... />
....
</bean>
UPDATE 1
是否可以编写以下方式:
Is it possible to write following way:
<bean id="sequence" class="...ArrayList">
<constructor-arg>
<list>
<bean class="...MyClass" constructor-arg="A"/>
<bean class="...MyClass" constructor-arg="B"/>
<bean class="...MyClass" constructor-arg="C"/>
</list>
</constructor-arg>
</bean>
推荐答案
您可以:
<bean id="myClassA" class="org.foo.MyClass">
<constructor-arg>
<bean class="java.lang.String">
<constructor-arg value="A"/>
</bean>
<constructor-arg>
</bean>
<bean id="sequence" class="java.util.ArrayList">
<constructor-arg>
<list>
<ref bean="myClassA" />
...
</list>
</constructor-arg>
</bean>
但是,请注意,最常见的方法是将列表直接插入到bean中,列表中的列表。
Note, however, that the most common approach is to inject a list directly into a bean rather than wrapping a list within a list first.
这篇关于是否可以创建一个具有Spring配置的集合?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文