我想部分地自动装配一个 bean - 也就是说,我希望一些 args 被自动装配,但其他的被显式设置。例如:
public MyClient(Service svc, boolean b)
在这个构造函数的情况下,我想在我的 xml 中指定 b 的值,但是让 svc 自动装配。那可能吗?
谢谢,洛厄尔
我想部分地自动装配一个 bean - 也就是说,我希望一些 args 被自动装配,但其他的被显式设置。例如:
public MyClient(Service svc, boolean b)
在这个构造函数的情况下,我想在我的 xml 中指定 b 的值,但是让 svc 自动装配。那可能吗?
谢谢,洛厄尔
我不认为构造函数是可能的,但是对于显式设置器肯定是。只需使用 @Autowired 注释您想要自动装配的那些,然后在您的配置文件中设置其他
就像是:
public MyClient() {}
@Autowired
public setService (Service svc) {...}
public setBoolean (boolean b) {...}
然后在你的配置中
<context:annotation-config />
<bean id="service">...</bean>
<bean id="yourbean" class="MyClient">
<property name="b" value="true"/>
</bean>
我自己想出来的,万岁!
我这样做的方式是在我的 xml 中添加以下内容:
<bean class="MyClient" autowire="constructor">
<constructor-arg index="1">...</constructor-arg>
<bean>