IOC容器
IOC容器的基础
org.springframework.beans
和 org.springframework.context
这两个包是IOC容器的基础,要使用Spring的IOC功能,需要导入这两个jars。
IOC容器的作用
这是官方文档中IOC容器的示意图:
IOC容器的主要作用就是管理我们beans,只需要我们把配置文件写好,IOC容器就会根据配置信息提供给我们想要的beans,在需要对象的时候可以直接和IOC容器去要,不需要手动去new一个对象,详细信息可以参考这篇文章:IOC和DI
IOC容器的实现
Spring提供了两种类型的IOC容器的实现:
BeanFactory:IOC容器的基本实现。他是访问bean的顶层接口,提供了能够管理任何类型的对象的高级配置机制,就是提供了配置bean的框架和一些基本的功能。
ApplicationContext 提供了更多高级特性,是BeanFactory的子接口,在BeanFactory的基础上添加了
许多企业专用的功能,它是BeanFactory的超集,所以大多数情况下org.springframework.context.ApplicationContext
这个接口代表着IOC容器,它负责对象的实例化配置和装配。这是他们的继承关系:
ApplicationContext的两个主要实现类:
1. ClassPathXmlApplicationContext:从ClassPath中加载XML配置文件,之前文章中都使用的这种方式,这中方式比FileSystemXmlApplicationContext使用的频繁。
2. FileSystemXmlApplicationContext:从文件系统中加载XML配置文件