首先要明确这两个都是用来获取bean对象的,我们一般使用ApplicationContext,从这里就可以看出两者的关系
1. applicationContext是FactoryBean的功能增强,也就是说applicationContext继承FactoryBean
既然又=有继承关系那么扩展了啥功能那?
1.继承MessageSource,因此支持国际化
2. 可以配置加载不同的配置文件 相同点我只知道这两点
区别:
1.Beanfactory是使用懒加载Bean的,而我们的applicationContext是即时加载的,这样就会暴露出开发中的bug,在初始化的时候就会把问题暴露出来
2.不足之处就是他的及时加载,会消耗大量的内存资源,启动起来可能比较慢
3.两者都支持beanpostProcessor,不同的是Beanfactory需要手动注册,另一个则不需要