IoC容器负责实例化、配置和组装对象。IoC容器从XML文件中获取信息,并相应地进行处理。IoC容器执行的主要任务包括:

  • 实例化应用程序类
  • 配置对象
  • 组装对象之间的依赖关系

有两种类型的IoC容器:

  1. BeanFactory
  2. ApplicationContext

BeanFactory和ApplicationContext之间的区别

org.springframework.beans.factory.BeanFactory和org.springframework.context.ApplicationContext接口都充当了IoC容器的角色。ApplicationContext接口是建立在BeanFactory接口之上的。它比BeanFactory添加了一些额外的功能,例如与Spring的AOP简单集成、消息资源处理(用于国际化)、事件传播、应用程序层特定的上下文(例如WebApplicationContext)用于Web应用程序。因此,建议使用ApplicationContext而不是BeanFactory。

使用BeanFactory

XmlBeanFactory是BeanFactory接口的实现类。要使用BeanFactory,我们需要创建XmlBeanFactory类的实例,如下所示:

Resource resource = **new** ClassPathResource("applicationContext.xml");
BeanFactory factory = **new** XmlBeanFactory(resource);

XmlBeanFactory类的构造函数接收Resource对象,因此我们需要将Resource对象传递给BeanFactory的构造函数来创建BeanFactory的实例。

使用ApplicationContext

ClassPathXmlApplicationContext类是ApplicationContext接口的实现类。我们需要实例化ClassPathXmlApplicationContext类以使用ApplicationContext,如下所示:

ApplicationContext context = 
**new** ClassPathXmlApplicationContext("applicationContext.xml");

ClassPathXmlApplicationContext类的构造函数接收字符串参数,因此我们可以传递xml文件的名称来创建ApplicationContext的实例。

标签: spring, Spring教程, Spring技术, Spring语言学习, Spring学习教程, Spring下载, Spring框架, Spring框架入门, Spring框架教程, Spring框架高级教程, Spring面试题, Spring笔试题, Spring编程思想