Spring的核心容器

引言

Spring框架的主要功能是通过其核心容器来实现的。Spring框架提供了两种核心容器,分贝为BeanFactory和ApplicationContex。

1、BeanFactory

BeanFactory是一个管理Bean的工厂,它主要负责初始化各种Bean,并调用它们的生命周期的方法。由org.springframework.beans.factory.BeanFactory接口定义

BeanFactory接口提供了几个实现类,最常用:org.springframework.beans.factory.xml.XmlBeanFactory
该类会根据XML配置文件中的定义来装配Bean

创建BeanFactory实例时,需要提供Spring所管理容器的详细配置信息,配置信息通常采用XML文件形式来管理,语法如下

BeanFactory beanFactory  = 
new  XmlBeanFactory(new FileSystemResouce("F://applicationContex.xml"));

2、ApplicationContext

是Beanfactory的子接口,由org.springframework.context.ApplicationContext接口定义,不仅BeanFactory的所有功能,还添加了国际化、资源访问、事件传播等方面的支持。

创建ApplicationContext接口实例方法

  1. 通过ClassPathXMLApplicationContext创建

    从类路径classPath中寻找指定的XML配置文件,并装载完成ApplicationContext的实例化工作,语法如下

ApplicationContext applicationContext  = 
	new ClassPathXMLApplicationContex(String configLocation);

cnfigLocation参数用于指定Spring配置文件的名称和位置

  1. 通过FileSystemXmlApplicationContext创建

从指定的文件系统路径(绝对路径)中寻找指定的XML配置文件,并装载完成ApplicationContext的实例化工作,语法如下

ApplicationContext applicationContext  = 
	new FileSystemXmlApplicationContext(String configLocation);

此种方法会导致程序的灵活性变差,所以一般不推荐使用


Web服务器实例化ApplicationContext容器时,通常会使用基于ContextLoaderListener实现的方式,需要在web.xml中添加如下代码:

<!--  指定Spring配置文件的位置,多个配置文件时,以逗号分隔-->
<context-param>
	<param-name>contextConfigLocation</param-name>
	<!--  Spring加载spring目录下的applicationContext.xml文件-->
	<param-value>
		classpath:spring/applicationContext.xml
	</param-value>
</context-param>
<!--  指定以ContextLocation方式启动Spring容器-->
<listener>
	<listener-class>
		org.springframework.web.context.ContextLoaderListener
	</listener-class>
</listener>
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值