使用add方法实现xml中的Spring注入
我想使用使用add方法实现xml中的Spring注入,spring,Spring,我想使用addProperty方法将一个bean注入另一个bean。例如,如果我有beanA和beanB并且beanB有一个方法addA(),但没有setter方法,我如何将beanA注入B,而不借助注释。您可以这样做: <bean id="a" class="my.A" /> <bean id="b" class="my.B" /> <bean class="org.springframework.beans.factory.config.MethodInvo
addProperty
方法将一个bean注入另一个bean。例如,如果我有beanA
和beanB
并且beanB
有一个方法addA()
,但没有setter方法,我如何将beanA
注入B
,而不借助注释。您可以这样做:
<bean id="a" class="my.A" />
<bean id="b" class="my.B" />
<bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
<property name="targetObject" ref="b" />
<property name="targetMethod" value="addA" />
<property name="arguments" ref="a" />
</bean>
当然,如果您有很多bean连接要做,这种方法就不能很好地扩展。如果您拥有代码,那么应该使用Spring注释和自动连接,或者定义setter并使用“property”Spring XML标记。什么是
addA()?它是否添加到列表中?如果是这样的话,List
是否有一个setter?我认为内部addA()
将a
添加到某种集合中,但我不知道它在做什么。我无法访问库的源代码,但库中充满了这样的API。至少我可以在启动时使用它来加载一些bean。谢谢你的帮助,@bcody。