我有以下课程,我试图通过 spring 实例化。
class MyBean{
MyBean myBeanFallback;
MyDataObject myDataObject;
public void setMyBeanFallback(MyBean myBeanFallback){
this.myBeanFallback = myBeanFallback;
}
MyBean(MyDataObject myDataObject){
this.myDataObject = myDataObject;
}
}
以下是我试图用来加载它的弹簧配置:
<bean name="myNewBean" class="MyBean"
scope="prototype">
<constructor-arg index="0" type="MyDataObject" >
<null />
</constructor-arg>
<property name="myBeanFallback" ref="myOldBean" />
</bean>
<bean name="myOldBean" class="MyBean"
scope="prototype">
<constructor-arg index="0" type="MyDataObject" >
<null />
</constructor-arg>
</bean>
在我的应用程序代码中,我可以实例化具有数据且没有回退的 myOldBean。否则我可以实例化具有数据的 myNewBean 并且还具有 myOldBean 作为后备,这反过来也需要具有相同的 myDataObject
getNewBean(MyData mydata){
return (MyBean) context.getBean("myNewBean", new Object[] { mydata });
}
getOldBean(MyData mydata){
return (MyBean) context.getBean("myOldBean", new Object[] { mydata });
}
我现在面临的问题是,在获取 myNewBean 时,后备 getNewBean 不会填充 mydata,而是采用 null。
有关如何解决此问题的任何指示?