分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > IT知识

web.xml

发布时间:2023-09-06 01:08责任编辑:彭小芳关键词:xml

web.xml的加载过程

  当我们去启动一个WEB项目时,首先会读取项目web.xml配置文件,当这一步骤没有出错并且完成之后,项目才能正常地被启动起来。
(1)启动WEB项目的时候,容器(一般Tomcat)首先会去它的配置文件web.xml读取两个节点<listener></listener>和<context-param></context-param>;
(2)紧接着,容器创建一个ServletContext(application),这个WEB项目所有部分都将共享这个上下文;
(3)<context-param>上下文参数,容器以<context-param></context-param>的name作为键,value作为值,将其转化为键值对,存入ServletContext,
  故这些键值对会在这个项目中共享;
(4)<listener>监听器,容器创建<listener></listener>中的类实例,根据配置的class类路径<listener-class>来创建监听;
  在监听中会有contextInitialized(ServletContextEvent args)初始化方法,启动Web应用时,系统调用Listener的该方法,在这个方法中获得:
  ServletContext application =ServletContextEvent.getServletContext();
  context-param的值= application.getInitParameter("context-param的键");
(5)<filter>过滤器,容器会读取<filter></filter>,根据配置的class类路径来实例化过滤器;
以上都是在WEB项目还没有完全启动起来的时候就已经完成了的工作。

(6)<servlet>,如果系统中有Servlet,则Servlet是在第一次发起请求的时候被实例化的,而且一般不会被容器销毁,它可以服务于多个用户的请求。
  所以,Servlet的初始化都要比上面提到的那几个要迟。
总的来说,web.xml的加载顺序是: <context-param>-> <listener> -> <filter> -> <servlet>。如果web.xml中出现了相同的元素,则按照在配置文件中出现的先后顺序来加载。

平常看到的模板文件

  schema,web.xml的模式文件是由Sun公司定义的,每个web.xml文件的根元素<web-app>中,都必须标明这个 web.xml使用的是哪个模式文件。其它的元素都放在<web-app></web-app>之中。其中<display-name></display-name>定义了web应用名称。

 详细参考:(1)http://blog.csdn.net/believejava/article/details/43229361

      (2)http://www.cnblogs.com/hellojava/archive/2012/12/28/2835730.html

web.xml

原文地址:http://www.cnblogs.com/xdyixia/p/7798212.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved