factorybean和普通bean
时间: 2023-08-26 19:07:20 浏览: 49
引用中提到,Spring中有两种类型的Bean,一种是普通Bean,另一种是工厂Bean(FactoryBean)。普通Bean在配置文件中定义的类型就是返回类型,而工厂Bean则可以定义返回类型与配置文件中定义的类型不一样。普通Bean的创建可以直接在配置文件中定义类的类型,而工厂Bean需要创建一个类作为工厂Bean,并实现FactoryBean接口,在接口的方法中定义返回的Bean类型。
引用中也提到了FactoryBean的概念,与普通Bean不同,工厂Bean返回的对象并不是指定类的一个实例,而是由FactoryBean的getObject方法返回的对象。工厂Bean的isSingleton方法决定了返回的对象是否是单例。
综上所述,FactoryBean和普通Bean的区别在于创建方式和返回的对象类型。普通Bean的创建可以直接在配置文件中定义类的类型,而工厂Bean需要创建一个工厂类,并实现FactoryBean接口,通过getObject方法返回对象。工厂Bean的返回对象不一定是指定类的实例,而是根据getObject方法的返回值确定。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [spring学习--bean--普通bean与工厂bean(FactoryBean)区别](https://blog.csdn.net/weixin_45787528/article/details/117046470)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [FactoryBean和普通Bean的区别](https://blog.csdn.net/HDawnn/article/details/124210500)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]