`

web.xml的读取顺序

    博客分类:
  • J2EE
 
阅读更多

转自:http://zyn010101.iteye.com/blog/1839116

 

由于项目中需要区分一下监听器的加载顺序,动手查了一下资料,下面有些为转载的

web.xml 中主要配置context-param,listener,servlet,filter,这四种类型的读取启动顺序与在web.xml中的位置无关,容 器启动时首先读取context-param,供listener,filter,servlet使用,然后读取listener,启动相应的监听,

 

具体优先级为context-param>listener>filter>servlet.

 

        对于filter,配置节点与它们出现的顺序是有关的,web.xml 中当然可以定义多个 filter,与 filter 相关的一个配置节是 filter-mapping,这里一定要注意,对于拥有相同 filter-name 的 filter 和 filter-mapping 配置节而言,filter-mapping 必须出现在 filter 之后,否则当解析到 filter-mapping 时,它所对应的 filter-name 还未定义。web 容器启动时初始化每个 filter 时,是按照 filter 配置节出现的顺序来初始化的,当请求资源匹配多个 filter-mapping 时,filter 拦截资源是按照 filter-mapping 配置节出现的顺序来依次调用 doFilter() 方法的。  servlet在这点 同 filter 类似 ,但启动顺序与它们出现的顺序是有关的并不完全匹配,load-on-startup 参数指定了sevlet呗加载的顺序,它 的值必须是一个整数。如果它的值是一个负整数或是这个元素不存在,那么容器会在该 servlet被调用的时候,加载这个servlet 。如果值是正整数或零,容器在配置的时候就加载并初始化这个servlet,容器必须保证值小的先被加载。如果值相等,容器可以自动选择先加载谁。 在servlet的配置当中,5的含义是: 标记容器是否在启动的时候就加载这个servlet。 当值为0或者大于0时,表示容器在应用启动时就加载这个servlet; 当是一个负数时或者没有指定时,则指示容器在该servlet被选择时才加载。 正数的值越小,启动该servlet的优先级越高。 对于listener,配置节点与它们出现的顺序是有关的。

 

   

 

 

分享到:
评论

相关推荐

    关于JSP配置文件web.xml加载顺序详解

    1、启动一个WEB项目的时候,WEB容器会去读取它的配置文件web.xml,读取和两个结点。 2、紧急着,容创建一个ServletContext(servlet上下文),这个web项目的所有部分都将共享这个上下文。 3、容器将转换为键值对,并...

    Struts配置详解.doc

    Web应用的发布描述文件:web应用发布描述文件可以在应用开着者,发布者和组装者之间传递配置信息,Web容器在启动的时候从该文件中读取配置信息,根据它来装载和配置web应用.文档类型定义DTD对XML文档的格式做了定义,DTD...

    DWR.xml配置文件说明书(含源码)

    "-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" "http://www.getahead.ltd.uk/dwr/dwr10.dtd"> 整个配置文件的大体结构如下: <creator id="..." class="..."/> <converter id="..." class="..."/>...

    web项目的启动时文件加载顺序1

    一、1、启动一个WEB项目,WEB容器会先去读取它的配置文件web.xml,读取和两个节点 二、load-on

    XML轻松学习手册--XML肯定是未来的发展趋势,不论是网页设计师还是网络程序员,都应该及时学习和了解

    XML越来越热,关于XML的基础教程网络上也随处可见。可是一大堆的概念和术语往往让人望而生畏,很多朋友问我:XML到底有什么用,我们是否需要学习它?我想就我个人学习过程的心得和经验,写一篇比较全面的介绍文章。...

    xml入门教程/xml入门教程

    8) XML是SGML的子语言,由SGML简化而来,起初的目的是为Web的结构文档提供服务。 9) W3C组织在1998年2月10日发布XML1.0版,第二个版本发布于2000年10月9日。 10)XML是分层的树形结构的自解释的一种可扩展的标记...

    springmybatis

    1. 现阶段,你可以直接建立java 工程,但一般都是开发web项目,这个系列教程最后也是web的,所以一开始就建立web工程。 2. 将 mybatis-3.2.0-SNAPSHOT.jar,mysql-connector-java-5.1.22-bin.jar 拷贝到 web工程的...

    Spring Security 中文教程.pdf

    2.2.1. 配置web.xml 2.2.2. 最小 <http> 配置 2.2.2.1. auto-config 包含了什么? 2.2.2.2. 表单和基本登录选项 2.2.3. 使用其他认证提供器 2.2.3.1. 添加一个密码编码器 2.3. 高级web特性 2.3.1. ...

    SpringSecurity 3.0.1.RELEASE.CHM

    2.2.1. 配置web.xml 2.2.2. 最小 配置 2.2.2.1. auto-config包含了什么? 2.2.2.2. 表单和基本登录选项 2.2.3. 使用其他认证提供器 2.2.3.1. 添加一个密码编码器 2.3. 高级web特性 2.3.1. Remember-Me认证 ...

    ssh(structs,spring,hibernate)框架中的上传下载

     本文后面的章节将从数据持久层->业务层->Web层的开发顺序,逐层讲解文件上传下载的开发过程。  数据持久层  1、领域对象及映射文件  您可以使用Hibernate Middlegen、HIbernate Tools、Hibernate ...

    Spring-Reference_zh_CN(Spring中文参考手册)

    2.2.1. 更简单的XML配置 2.2.2. 新的bean作用域 2.2.3. 可扩展的XML编写 2.3. 面向切面编程(AOP) 2.3.1. 更加简单的AOP XML配置 2.3.2. 对@AspectJ 切面的支持 2.4. 中间层 2.4.1. 在XML里更为简单的声明性事务配置 ...

    Spring Security-3.0.1中文官方文档(翻译版)

    2.2.1. 配置web.xml 2.2.2. 最小<http> 配置 2.2.2.1. auto-config 包含了什么? 2.2.2.2. 表单和基本登录选项 2.2.3. 使用其他认证提供器 2.2.3.1. 添加一个密码编码器 2.3. 高级web 特性 2.3.1. ...

    asp.net专家疑难解答200问源码

    101.如何使用TreeView Web控件绑定XML文件-示例1 101.如何使用TreeView Web控件绑定XML文件-示例2 第6章 数据服务控件 103.如何使用Repeater控件显示数据 104.如何使用Repeater控件的模板 105.如何实现...

    PHP和MySQL Web开发第4版pdf以及源码

    10.3.3 以特定的顺序获取数据 10.3.4 分组与合计数据 10.3.5 选择要返回的行 10.3.6 使用子查询 10.4 更新数据库记录 10.5 创建后修改表 10.6 删除数据库中的记录 10.7 表的删除 10.8 删除整个数据库 10.9 ...

    DWR中文文档.pdf

    web.xml配置 13 2.1 主要配置 13 2.2 常用参数列表 14 2.2.1 安全参数 14 2.2.2 Ajax服务器加载时保护参数 14 2.2.3 其他参数 15 2.3 日志配置 16 2.4 多个dwr.xml配置和J2EE角色定义 ...

    jpivot学习总结.doc

    最后你还需要对比 jpivot.war 里的 web.xml 文件去修改你自己的 web.xml 文件。 2. 例子说明 一个Schema的xml文件,定义立方体;(feeSchema.xml) 一个jsp文件(fee.jsp),使用jpivot的标签(jp:mondrianQuery),...

    PHP和MySQL WEB开发(第4版)

    10.3.3 以特定的顺序获取数据 10.3.4 分组与合计数据 10.3.5 选择要返回的行 10.3.6 使用子查询 10.4 更新数据库记录 10.5 创建后修改表 10.6 删除数据库中的记录 10.7 表的删除 10.8 删除整个数据库 10.9 进一步...

    asp.net专家疑难解答200问

    如何使用TreeView Web控件绑定XML文件-示例2 第6章 数据服务控件 103.如何使用Repeater控件显示数据 104.如何使用Repeater控件的模板 105.如何实现Repeater控件的分页 106.如何使用DataList...

Global site tag (gtag.js) - Google Analytics