Spring MVC - using FactoryBeans



实现接口 FactoryBean(一种将有趣的对象构造逻辑封装在类中的模式)的 Bean 可以当普通豆子吗?

简而言之:

  • 是的,您可以像使用普通豆子一样使用FactoryBean(例如将其注入其他豆子中)
  • 此外,工厂 bean 将按需创建<T>的实例(或单例实例),这也将是 Spring bean。因此,您还可以将<T>实例注入到其他 bean 中。在这种情况下,Spring 将使用您的工厂创建一个实例

使用参考文档中的自定义FactoryBeans的主要原因:

FactoryBean接口是Spring IoC容器实例化逻辑的可插拔性点。如果你有复杂的初始化代码,而不是(可能)详细的XML,你可以创建自己的FactoryBean,在该类中编写复杂的初始化,然后将你的自定义FactoryBean插入容器。

弗赫特阅读:http://docs.spring.io/spring/docs/4.1.7.RELEASE/spring-framework-reference/html/beans.html#beans-factory-extension-factorybean

FactoryBean 是以 Bean 样式定义的,但为 Bean 引用公开的对象 (getObject()) 始终是它创建的对象

相关内容

  • 没有找到相关文章

最新更新