代码:
<bean id="bean1" ...
<property name="Utils">
...
</bean>我想做的是:
<bean id="bean2" ...
<property name="Utils" ref="bean1.Utils"/>在Spring中有可能吗?或者类似的东西?谢谢。
发布于 2012-07-04 20:11:37
我非常确定Jigar Joshi的answer 就是您所需要的--但是如果不是这样,您可以使用SpEL
<bean id="bean2" ...
<property name="Utils" value="#{bean1.getUtils()}"/>这里假设bean1公开了一个getUtils()方法。
请注意,这不是正统的做法,通常也不是推荐的做法。
发布于 2012-07-04 18:50:43
是
<bean id="bean1" ...>
<property name="Utils" ref="utilBean">
</bean>
<bean id="utilBean" ...>和
<bean id="bean2" ...
<property name="Utils" ref="utilBean"/>由于utilBean将是singleton,因此bean1和bean2对于属性Utils将具有相同的实例
发布于 2012-07-04 19:13:02
您可以使用PropertyPathFactoryBean。请参阅http://static.springsource.org/spring/docs/2.5.x/reference/xsd-config.html#xsd-config-body-schemas-util-property-path:
<bean id="bean2" ...
<property name="Utils">
<bean id="bean1.Utils"
class="org.springframework.beans.factory.config.PropertyPathFactoryBean"/>这也可以使用来自bean1的属性,这些属性不是由Spring设置的,只要它有一个getter。
https://stackoverflow.com/questions/11327553
复制相似问题