BeanFactory和FactoryBean的区别,beanfactory

BeanFactory是Spring
IOC容器的严重性接口,用于实例化、获取bean实例和bean相关音讯,主要的秘籍有:

必发88官网 1
FactoryBean首要用于定制化实例bean,首要接口有:
必发88官网 2
通过重写getObject方法我们能够实例化大家想要的bean。

Spring
IOC实例化bean后会判别该bean是还是不是是FactoryBean的子类,借使是就调用getObject,并将结果再次来到。

必发88官网,基于FactoryBean大家得以友善完成目的的实例化,完成相同DUBBO中配置远程服务的spring配置,编写多个类完毕FactoryBean,该类中包含应用相关的性情、load
balance属性、服务类型属性和代办接口的习性,在getObject中经过ProxyFactory重回钦定接口的代理完成,在代理达成中得以依附安顿的load
balance计策和服务类型从注册的服务器提供者中甄选肆个人展览馆早先到端的服务调用,假若服务类型是RMI能够直接接收RMI公约调用,假若是RPC能够使用thrift调用。那样就能够在spring中运用完成的类来代劳远程服务了。

BeanFactory是Spring
IOC容器的最主要接口,用于实例化、获取bean实例和bean相关消息,重要的秘技有:
Facto…

1、Ioc(Inverse of control,调整反转)  调节:指指标的调节权
反转:调节权从调用类中移除,由spring容器装配。是生成类对象的劳作。

2、Ioc类型:构造函数注入;属性注入;接口注入

3、resource财富访问,配置文件等

4、BeanFactory和ApplicationContext

BeanFactory:是spring框架的底子,面向spring本身;ApplicationContext:面向应用spring框架的开辟者,跟spring框架交互。BeanFactory

必发88官网 3

透过BeanFactory运营Ioc容器时,不会最先化bean,第三次调用时初叶化。对于单例格局的bean,会缓存到HashMap中,key是beanname

ApplicationContext注明运行类:AnnotationConfigApplicationContext
@Configuration注释的类

WebApplicationContext:

必发88官网 4

必发88官网 5

Bean配置音信定义了Bean的落到实处及注重关系,spring容器在里头创建Bean定义注册表(一个个的BeanDeinition组成),然后遵照注册表加载、实例化Bean,并建构Bean与Bean之间的信赖关系,最后将Bean实例归入Bean缓存池(单例)

 BeanFactory和FactoryBean其实未有何相比性的,只是两者的名号极度临近,所以有时候会拿出来相比生龙活虎番,BeanFactory是提供了OC容器最中央的款式,给现实的IOC容器的落到实处提供了标准,加载、管理bean,FactoryBean能够说为IOC容器中Bean的落到实处提供了更上一层楼灵敏的不二等秘书诀,FactoryBean在IOC容器的基础上给Bean的兑现拉长了贰个粗略工厂方式和装潢形式,大家得以在getObject()方法中灵活布置。其实在Spring源码中有超多FactoryBean的落到实处类,要想浓郁正确的接头FactoryBean,唯有去读读Spring源码了。

相关文章