如何注入依赖到一个自我实例化的对象在spring?
假设我们有一堂课:
public class MyClass { @Autowired private AnotherBean anotherBean; } 然后我们创build了这个类的一个对象(或者其他一些框架已经创build了这个类的实例)。
 MyClass obj = new MyClass(); 
是否有可能仍然注入依赖关系? 就像是:
 applicationContext.injectDependencies(obj); 
(我认为谷歌Guice有这样的东西)
 您可以使用AutowireCapableBeanFactory的autowireBean()方法执行此操作。 你把它传递给一个任意的对象,Spring会把它当作自己创build的东西来处理,并且会应用各种自动assembly的东西。 
 要获得AutowireCapableBeanFactory ,只需自动装入: 
 private @Autowired AutowireCapableBeanFactory beanFactory; public void doStuff() { MyBean obj = new MyBean(); beanFactory.autowireBean(obj); // obj will now have its dependencies autowired. } 
你也可以使用@Configurable标注来标记你的MyClass:
 @Configurable public class MyClass { @Autowired private AnotherClass instance } 
 然后在创build时它会自动注入它的依赖关系。 你也应该在你的应用上下文中使用<context:spring-configured/> xml。 
不是没有一些解决方法,因为Spring对这个实例一无所知。
 真正的问题是:你为什么要创build一个类的实例,你想手动注入依赖项,而不是让Spring控制它呢? 为什么不使用MyClass类注入MyClass ?