Spring(ApplicationContext&BeanFactory)

211 阅读1分钟

image

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

BeanFactory 和 ApplicationContext 的区别:创建对象的时间点不一样。

BeanFactory接口

  • spring的原始接口,针对原始接口的实现类功能较为单一.
  • BeanFactory接口实现类的容器,特点是每次在获得对象的时候才会创建对象.

ApplicationContext

  • 每次容器启动的时候就会创建配置文件中的所有对象,并提供更多功能.
实现类:
  • 从类路径下加载配置文件:ClassPathXmlApplicationContext
  • 从硬盘绝对路径下加载配置文件:FileSystemXmlApplicationContext("d:/xxxx")

结论:web开发中,一般使用ApplicationContext,当资源较为匮乏的时候才会使用BeanFactory.