我需要将外部lib类连接到我的bean,以便将其用作单例。
.xml配置:
<bean id="myBean" class="com.my.MyBean">
<property name="someLib" value="com.ExternalBean" />
</bean>
Java bean:
@Service
public class MyBean {
@Autowired
private ExternalBean externalBean;
public void setExternalBean(ExternalBean externalBean) {
this.externalBean = externalBean;
}
此外,我在公共方法中使用了有线变量
externalBean
,以免在每个方法调用中都实例化它。问题是
null
。我可以正确地装豆吗?
最佳答案
为了使@Autowired工作,您必须将外部类定义为bean。
<bean id="externalBean" class="some.external.package.ExternalBean">
</bean>
<bean id="myBean" class="com.my.MyBean">
</bean>
另外,如果使用@Autowired,则不需要设置器。