假设我有一些类,这些类不是由 Spring 实例化的。例如,它们可以通过反序列化器或 JavaFX
实例化。
我可以像编写 Spring bean 一样编写这些类并稍后将属性注入(inject)其中吗?
实际上,我想要一个例程,它可以使用反射扫描类,查找其中的所有 @Autowired
注释并从应用程序上下文注入(inject)值?
如果我调用applicationContext.getBeanFactory().registerSingleton("myName", myBean)
,会发生这种情况吗?请注意,我不会限制自己使用单例。
最佳答案
如果bean不是由Spring实例化的,那么你不能要求Spring注入(inject)依赖项或建议它们。
这是我看到 Spring 新手常犯的一个错误。他们调用 new 来实例化带有注释的 bean,并且无法理解为什么没有注入(inject)它们的依赖项。
Spring 将处理您使用 Bean 工厂实例化的所有 Bean。与使用 new 创建的所有其他人一样,您只能靠自己。
关于java - 我可以向第三方 bean 注入(inject)属性吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37346511/