首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Spring: FactoryBean vs @Configuration

Spring: FactoryBean vs @Configuration
EN

Stack Overflow用户
提问于 2020-05-13 13:25:24
回答 1查看 1.4K关注 0票数 4

我没有看到FactoryBean用于创建bean...Why的实用程序--您不能在配置类中创建相应的bean吗?FactoryBean有什么需要?

我知道我错过了一些东西,但我不知道到底是什么

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-13 15:28:47

Spring配置和FactoryBean类有一些相似之处,但是配置不仅可以选择为容器生成bean。@Configuration的创建是为了在java中实现所有可以用xml实现的功能,甚至更多。

使用FactoryBean,您可以:

  1. 使用一些自定义逻辑创建bean

仅此而已。

参考文献:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/beans/factory/FactoryBean.html

通过配置,您可以:

使用自定义逻辑(与FactoryBean).

  • Declare @ComponentScan

  • Declare @PropertySource

  • Import,另一种配置来自java配置,使用@Import

  • Import,使用@ImportResource

  • Configuration类的另一种配置可以导入以进行测试使用(作为测试配置)。

....a的许多其他用途

参考文献:https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/context/annotation/Configuration.html

最大的区别是@Configuration类是由Spring容器管理的,它的所有公共方法都是代理的。FactoryBean不是由Spring容器管理的,它只是一个为容器创建bean的工具。

NB:实现此接口的bean不能作为普通bean使用。FactoryBean是以bean样式定义的,但是为bean引用公开的对象(getObject())总是它的creates.....FactoryBean是一个编程契约的对象。实现不应该依赖于注释驱动的注入或其他反射设备。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61775861

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档