`
yangmig
  • 浏览: 17165 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

web.xml中配合context-param作用及运行原理

阅读更多
1.启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置文件web.xml.读两个节点: <listener></listener> 和 <context-param></context-param>

2.紧接着,容器创建一个ServletContext(上下文),这个WEB项目所有部分都将共享这个上下文.

3.容器将<context-param></context-param>转化为键值对,并交给ServletContext.

4.容器创建<listener></listener>中的类实例,即创建监听.

5.在监听中会有contextInitialized(ServletContextEvent args)初始化方法,在这个方法中获得
ServletContext = ServletContextEvent.getServletContext();
context-param的值 = ServletContext.getInitParameter("context-param的键");

6.得到这个context-param的值之后,你就可以做一些操作了.注意,这个时候你的WEB项目还没有完全启动完成.这个动作会比所有的Servlet都要早.
换句话说,这个时候,你对<context-param>中的键值做的操作,将在你的WEB项目完全启动之前被执行.

7.举例.你可能想在项目启动之前就打开数据库.
那么这里就可以在<context-param>中设置数据库的连接方式,在监听类中初始化数据库的连接.

8.这个监听是自己写的一个类,除了初始化方法,它还有销毁方法.用于关闭应用前释放资源.比如说数据库连接的关闭.

分享到:
评论

相关推荐

    spring配置中<context-param> 和<init-param>的 区别

    在Spring框架中,`&lt;context-param&gt;` 和 `&lt;init-param&gt;` 是两种不同的参数配置方式,它们在Web应用的初始化阶段起着关键作用。了解这两者的区别是优化和理解Spring应用程序运行时行为的重要知识点。 首先,`&lt;context...

    web.xml配置解析[总结].pdf

    `&lt;context-param&gt;`元素用于定义全局的初始化参数,这些参数在整个Web应用的生命周期中有效,可以被监听器、Servlet或过滤器访问。例如,配置`contextConfigLocation`参数可以指定Spring的配置文件位置: ```xml ...

    web.xml配置大全[汇编].pdf

    本文将深入探讨web.xml中的主要配置元素,包括listener、filter、servlet的加载顺序以及它们的工作原理。 一、启动过程与加载顺序 1. 当一个WEB项目启动时,Web容器首先读取web.xml文件,解析其中的和&lt;context-...

    web2.0开发中web.xml详解

    总的来说,web.xml是Java Web应用的配置中心,它定义了应用的行为和服务器如何响应用户请求,通过合理配置web.xml,可以实现应用的个性化需求和高效运行。要深入理解web.xml,不仅需要掌握XML的基本知识,还需要对...

    spring mvc 环境搭建

    - 在 `web.xml` 文件中配置 `DispatcherServlet`,它是 Spring MVC 的核心组件,负责接收客户端请求并将请求分发给合适的 Controller。 - 配置 `&lt;servlet&gt;` 和 `&lt;servlet-mapping&gt;` 标签来定义 `DispatcherServlet...

    WEB高级编程实验报告之Spring-MVC.doc

    &lt;param-value&gt;/WEB-INF/spring-servlet.xml&lt;/param-value&gt; &lt;/context-param&gt; &lt;!-- 字符编码过滤器 --&gt; &lt;filter-name&gt;encodingFilter&lt;/filter-name&gt; &lt;filter-class&gt;org.springframework.web.filter....

    Spring MVC入门小例子

    &lt;param-value&gt;/WEB-INF/spring/appServlet/servlet-context.xml&lt;/param-value&gt; &lt;/context-param&gt; &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener&lt;/listener-class&gt; &lt;servlet-...

    Javaweb项目如何添加web框架支持/添加web文件夹

    在Java Web开发中,构建一个能够运行在服务器上的Web应用通常需要一系列步骤来确保项目的正确配置与部署。其中,“添加web框架支持”和“添加web文件夹”是两个非常重要的环节。本文将详细介绍这两个操作的具体步骤...

    Struts2.0-Hibernate3.2-Spring2.0整合

    &lt;param-value&gt;/WEB-INF/applicationContext.xml&lt;/param-value&gt; &lt;/context-param&gt; ``` 此外,还需要配置Struts2的过滤器。 ```xml &lt;filter-name&gt;struts2&lt;/filter-name&gt; &lt;filter-class&gt;org.apache.struts2....

    myeclipse框架搭建步骤.doc

    &lt;param-value&gt;/WEB-INF/classes/applicationContext*.xml&lt;/param-value&gt; &lt;/context-param&gt; &lt;listener-class&gt;org.springframework.web.context.ContextLoaderListener&lt;/listener-class&gt; ``` 这样,当Web容器...

    SpringMVC第一天.pdf

    - **2.1 如果不配置 `&lt;init-param&gt;`,默认会在 `/WEB-INF/&lt;servlet-name&gt;-servlet.xml` 中查找配置文件。** 但是,通常我们会手动配置 `&lt;init-param&gt;` 来指定SpringMVC的配置文件路径。例如: ```xml ...

    传智播客SSI ppt

    2. **设置privileged属性**:在$CATALINA_HOME/conf/context.xml中,为&lt;Context&gt;节点添加privileged="true"属性,以允许web应用使用容器的servlet。 3. **开启SSI功能**:在$CATALINA_HOME/conf/web.xml中,取消对...

    spring mvc基础

    #### 三、Spring MVC 运行原理 1. **客户端发起请求**:用户通过浏览器或其他客户端发送HTTP请求到服务器。 2. **请求到达DispatcherServlet**:所有HTTP请求首先到达DispatcherServlet,这是Spring MVC的入口。 3....

    Spring Web零xml配置原理以及父子容器关系详解

    在传统的Spring MVC应用中,`web.xml`是启动配置的核心,它包含了`context-param`、`listener`和`servlet`等元素。`context-param`用于指定Spring应用上下文(ApplicationContext)的配置位置,例如`spring.xml`。`...

    servlet基础知识新手下载

    - 可以通过`web.xml`中的`&lt;init-param&gt;`设置初始化参数,以避免硬编码路径等信息。 - 使用示例: `String path = getInitParameter("path");` #### 二、Request与Response对象详解 1. **Request对象** - **定义*...

    SpringMVC快速入门示例

    在Web应用的`web.xml`文件中,配置SpringMVC的核心组件`DispatcherServlet`,它负责接收请求并分发到相应的处理器。 ```xml &lt;web-app&gt; ... &lt;servlet-name&gt;dispatcher&lt;/servlet-name&gt; &lt;servlet-class&gt;org....

    red5流媒体视频会议入门实例

    例如,修改web.xml中的webAppRootKey参数值,将其更改为对应工程名/myapp,以便服务器能正确定位到你的应用。 ```xml &lt;context-param&gt; &lt;param-name&gt;webAppRootKey&lt;/param-name&gt; &lt;param-value&gt;/myapp&lt;/param-value...

    SpringMvc配置及简单例子

    &lt;param-value&gt;/WEB-INF/spring/appServlet/servlet-context.xml&lt;/param-value&gt; &lt;/init-param&gt; &lt;load-on-startup&gt;1&lt;/load-on-startup&gt; &lt;servlet-mapping&gt; &lt;servlet-name&gt;dispatcher&lt;/servlet-name&gt; &lt;url-...

Global site tag (gtag.js) - Google Analytics