java - 如何填充可变参数构造器取消 applicationContext bean?
问题描述
我有一个带有 varaggrgs 构造函数的课程
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>
推荐阅读
- python-3.x - 如何使用 DICT 数据类型 (boto3) 更新 DynamoDB 表
- python - 在服务器重新启动时清除 Django webapp 的所有会话
- c# - 泛型类型作为必须实现特定接口的参数
- html - 如何在新行上创建跨度?
- javascript - 任何可以创建用户友好的 unqiue id 的 npm 模块?
- pubnub - PubNub 使用 REST API 授予身份验证密钥
- excel - 仅为当前日期保存多个电子邮件附件
- arrays - 我如何使用(向右移动)对我的数组进行排序
- ruby-on-rails - 一个 simple_form 可以创建多个模型的实例吗?
- php - php页面在centos中使用nginx php-fdm返回**404 Not Found**