- 前言
- 第一部分 核心实现
- 第 1 章 Spring 整体架构和环境搭建
- 第 2 章 容器的基本实现
- 第 3 章 默认标签的解析
- 第 4 章 自定义标签的解析
- 第 5 章 bean 的加载
- 第 6 章 容器的功能扩展
- 第 7 章 AOP
- 第二部分 企业应用
- 第 8 章 数据库连接 JDBC
- 第 9 章 整合 MyBatis
- 第 10 章 事务
- 第 11 章 SpringMVC
- 第 12 章 远程服务
- 第 13 章 Spring 消息
11.2 ContextLoaderListener
对于 SpringMVC 功能实现的分析,我们首先从 web.xml 开始,在 web.xml 文件中我们首先配置的就是 ContextLoaderListener,那么它所提供的功能有哪些又是如何实现的呢?
当使用编程方式的时候我们可以直接将 Spring 配置信息作为参数传入 Spring 容器中,如
ApplicationContext ac=new ClassPathXmlApplicationContext(“applicationContext.xml”);
但是在 Web 下,我们需要更多的是与 Web 环境相互结合,通常的办法是将路径以 context-param 的方式注册并使用 ContextLoaderListener 进行监听读取。
ContextLoaderListener 的作用就是启动 Web 容器时,自动装配 ApplicationContext 的配置信息。因为它实现了 ServletContextListener 这个接口,在 web.xml 配置这个监听器,启动容器时,就会默认执行它实现的方法,使用 ServletContextListener 接口,开发者能够在为客户端请求提供服务之前向 ServletContext 中添加任意的对象。这个对象在 ServletContext 启动的时候被初始化,然后在 ServletContext 整个运行期间都是可见的。
每一个 Web 应用都有一个 ServletContext 与之相关联。ServletContext 对象在应用启动时被创建,在应用关闭的时候被销毁。ServletContext 在全局范围内有效,类似于应用中的一个全局变量。
在 ServletContextListener 中的核心逻辑便是初始化 WebApplicationContext 实例并存放至 ServletContext 中。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论