如何使用 applicationContext bean 填充可变参数构造函数?
How to fill a varargs contructor unsing applicationContext beans?
我有一个带有可变参数构造函数的 class
public class ScpDataProvider {
------------
public ScpDataProvider(DataStore... datastores) {
for(DataStore d : datastores) {
if(d.type.equals("SQL"))
initSqlConnection(d);
dataStores.AddDataStore(d);
}
}
------------
}
如何用数据存储的bean填充构造函数?
这导致 Attribute "ref" is not allowed here
<bean id="dataService"
class="com.fressnapf.sdk.dataaccess.services.impl.ScpDataProvider">
<constructor-arg>
<array>
<bean ref="dataStore" />
<bean ref="dataStore2" />
</array>
</constructor-arg>
</bean>
您可以使用参考列表:
<bean id="dataService" class="com.fressnapf.sdk.dataaccess.services.impl.ScpDataProvider">
<constructor-arg>
<list>
<ref bean="dataStore" />
<ref bean="dataStore2" />
</list>
</constructor-arg>
我有一个带有可变参数构造函数的 class
public class ScpDataProvider {
------------
public ScpDataProvider(DataStore... datastores) {
for(DataStore d : datastores) {
if(d.type.equals("SQL"))
initSqlConnection(d);
dataStores.AddDataStore(d);
}
}
------------
}
如何用数据存储的bean填充构造函数?
这导致 Attribute "ref" is not allowed here
<bean id="dataService"
class="com.fressnapf.sdk.dataaccess.services.impl.ScpDataProvider">
<constructor-arg>
<array>
<bean ref="dataStore" />
<bean ref="dataStore2" />
</array>
</constructor-arg>
</bean>
您可以使用参考列表:
<bean id="dataService" class="com.fressnapf.sdk.dataaccess.services.impl.ScpDataProvider">
<constructor-arg>
<list>
<ref bean="dataStore" />
<ref bean="dataStore2" />
</list>
</constructor-arg>