为了账号安全,请及时绑定邮箱和手机立即绑定

如何在Spring中将依赖项注入到自实例对象中?

如何在Spring中将依赖项注入到自实例对象中?

陪伴而非守候 2019-10-15 14:11:10
假设我们有一个课程:public class MyClass {    @Autowired private AnotherBean anotherBean;}然后,我们创建了此类的一个对象(或其他一些框架创建了此类的实例)。MyClass obj = new MyClass();是否仍然可以注入依赖项?就像是:applicationContext.injectDependencies(obj);(我认为Google Guice有这样的内容)
查看完整描述

3 回答

?
萧十郎

TA贡献1815条经验 获得超12个赞

您可以使用的autowireBean()方法执行此操作AutowireCapableBeanFactory。您将其传递给一个任意对象,Spring将把它当作它自己创建的对象对待,并将应用各种自动装配的点点滴滴。


要掌握AutowireCapableBeanFactory,只需自动连线即可:


private @Autowired AutowireCapableBeanFactory beanFactory;


public void doStuff() {

   MyBean obj = new MyBean();

   beanFactory.autowireBean(obj);

   // obj will now have its dependencies autowired.

}


查看完整回答
反对 回复 2019-10-15
?
ibeautiful

TA贡献1993条经验 获得超5个赞

您还可以使用@Configurable批注标记MyClass:


@Configurable

public class MyClass {

   @Autowired private AnotherClass instance

}

然后在创建时它将自动注入其依赖项。您还应该<context:spring-configured/>在应用程序上下文中具有xml。


查看完整回答
反对 回复 2019-10-15
  • 3 回答
  • 0 关注
  • 902 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信