BeanFactory与FactoryBean有什么区别?

2022/1/20 23:17:58

本文主要是介绍BeanFactory与FactoryBean有什么区别?,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

相同点:都是用来创建bean对象的

不同点:使用beanFactory创建对象的时候,必须要遵循严格的生命周期流程,太复杂了,如果想要简单的自定义某个对象的创建,同时创建好的对象想要交给spring来管理,那么就需要实现FactoryBean接口了

    这个接口里有三个方法:isSingleton:是否是单例对象

               getObjectType:获取返回对象的类型

               getObject:自定义创建对象的过程(new 、反射、动态代理)

    可以理解为:自己定制整个创建的过程,不再像之前的按照bean的生命周期那样去创建bean。

    

    BeanFactory是提供了OC容器最基本的形式,给具体的IOC容器的实现提供了规范,FactoryBean可以说为IOC容器中Bean的实现提供了更加灵活的方式,FactoryBean在IOC容器的基础上给Bean的实现加上了一个简单工厂模式和装饰模式,我们可以在getObject()方法中灵活配置



这篇关于BeanFactory与FactoryBean有什么区别?的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程