我正在学习 Spring Core 认证,对于将 bean 集合定义为 XML 配置,我有以下疑问。
例如,我有这个 XML 配置片段:
<bean id="service" class="com.acme.service.TransferServiceImpl">
<property name="customerPolicies">
<list>
<ref bean="privateBankingCustomerPolicy"/>
<ref bean="retailBankingCustomerPolicy"/>
<bean class="com.acme.DefaultCustomerPolicy"/>
</list>
</property>
</bean>
你能帮我理解到底是如何工作的吗?
在文档中,我读到它被称为 public void setCustomerPollicies(java.util.Listpolicies)) {...} 方法。我认为这取决于 必须是使用列表中的 beans 对象初始化的集合。是吗?
我的疑问是:为什么列表中的对象类型不同? (对 privateBankingCustomerPolicy bean 的引用、对 retailBankingCustomerPolicy bean 的引用以及类型为 com.acme.DefaultCustomerPolicy 的内部 bean)?
Tnx
最佳答案
如果签名是这样的并且没有使用泛型,那么任何类型都可以添加到这个列表中。
public void setCustomerPollicies(java.util.List policies)
如果你想在运行时限制类型,那么你必须使用泛型
public void setCustomerPollicies(java.util.List<Policy> policies)
关于java - 如何在 Spring 中将 bean 集合创建为 XML Java 配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27060757/