采取以下配置:
<beans>
<bean name="myToyota" class="Car">
<property name="contents">
<list>
<bean class="Wheel">
<property name="designation"><value>front-left</value></property>
<property name="parent"><ref bean="myToyota"/></property>
</bean>
<bean class="Wheel">
<property name="designation"><value>front-right</value></property>
<property name="parent"><ref bean="myToyota"/></property>
</bean>
</list>
</property>
</bean>
</beans>
是否可以在不直接引用myToyota
bean的Wheel
的情况下构建此图表? (也许使用SpEL)。
我担心的是,我不能将Wheels的描述复制粘贴到其他Car bean而不会引入破坏引用的可能性(这是我忘记手动调整parent
属性)。
换句话说:内部bean是否可以在不知道其名称的情况下引用它包含bean?
答案 0 :(得分:1)
如果您执行以下操作会怎样:
public class Car {
private List contents;
public List getContents() {
return contents;
}
public void setContents(List contents) {
this.contents = contents;
for (Iterator iterator = contents.iterator(); iterator.hasNext();) {
Wheel object = (Wheel) iterator.next();
object.setParent(this);
}
}
}