0
点赞
收藏
分享

微信扫一扫

Spring中的BeanFactory和ApplicationContext介绍

科牛 2022-04-13 阅读 84
java

首先我们可以在类的继承关系中看到这样一个图
在这里插入图片描述
在上一篇Spring中基于xml的IOC解耦中我们用的就是ApplicationContext接口中的一个实现类ClassPathXmlApplicationContext,现在我们详细介绍一下ApplicationContext里面的实现类

ClassPathXmlApplicationContext:
它是从类的根路径下加载配置文件 推荐使用这种
FileSystemXmlApplicationContext:
它是从磁盘路径上加载配置文件,配置文件可以在磁盘的任意位置。
AnnotationConfigApplicationContext:
当我们使用注解配置容器对象时,需要使用此类来创建 spring 容器。它用来读取注解。

BeanFactory 和 ApplicationContext 的区别

BeanFactory 才是 Spring 容器中的顶层接口。
ApplicationContext 是它的子接口。

BeanFactory 和 ApplicationContext 的区别:
创建对象的时间点不一样。
ApplicationContext:只要一读取配置文件,默认情况下就会创建对象。
BeanFactory:什么使用什么时候创建对象。

ApplicationContext:创建对象采取的策略是立即加载方式,也就是说,只要一读取完配置文件马上就创建配置文件中配置的对象。适应于单例对象使用。实际开发中推荐这个。

BeanFactory:创建对象采取的是延迟加载的方式,也就是说,什么时候根据id获取对象了,什么时候才真正加载对象。适应于多例对象。

新创建一个公众号 Rockey小何同学 想相互交流的同学可以关注一下哈! 感谢支持!

举报

相关推荐

0 条评论