我有以下XML配置:
<bean id="bean1" class="Simple"/>
<bean id="bean2" class="Simple"/>
<bean id="tasks" class="java.util.ArrayList">
<constructor-arg>
<list>
<ref bean="bean1" />
<ref bean="bean2" />
</list>
</constructor-arg>
</bean>
<bean id="list" class="Comp">
<property name="tasks" ref="tasks"/>
</bean>
Run Code Online (Sandbox Code Playgroud)
"tasks"包含Simple类型的所有bean.这个问题是我可能忘记添加一个我已配置到列表中的Simple bean.
我可以用编程方式做到这一点
Map map = context.getBeansOfType(Simple.class);
Run Code Online (Sandbox Code Playgroud)
并使用检索到的bean设置列表bean.
有没有办法只使用XML配置?
您的上下文文件应该是这样的:
<bean id="bean1" class="Simple"/>
<bean id="bean2" class="Simple"/>
<bean id="list" class="Comp" autowire="byType"/>
Run Code Online (Sandbox Code Playgroud)
请注意autowire="byType"添加和自动装配文档.
| 归档时间: |
|
| 查看次数: |
28926 次 |
| 最近记录: |