转自: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,配置节点与它们出现的顺序是有关的。
相关推荐
- 当应用服务器启动并加载Web应用程序时,首先读取`web.xml`文件。 - 首先解析的是`<context-param>`节点,这些参数作为全局配置,被转换为`ServletContext`的初始化参数。 - 紧接着,应用服务器创建`...
`web.xml`文件的最外层标签为`<web-app>`,所有的配置项都需要定义在这个标签内,并且遵循一定的顺序。以下是对`web.xml`主要配置项的详细介绍: #### 三、配置项详解 1. ****:该标签用于指定Web应用的显示名称。...
容器启动时会加载并读取web.xml文件,因此理解web.xml的配置项对于Web应用开发至关重要。 ### web.xml的内容 web.xml中可以定义多个配置元素,包括但不限于: - **icon**: 指定IDE和GUI工具用来表示Web应用的图像...
首先,web.xml文件在Web应用启动时被Web容器读取,其作用是在应用部署和运行时提供配置信息。当Web容器启动Web项目时,它首先读取web.xml文件中的和节点。 ServletContext是整个Web应用的上下文环境对象,它是在Web...
首先,当Web容器启动一个Web项目时,它会读取`web.xml`文件。在这个阶段,Web容器主要关注`<listener>`和`<context-param>`两个节点。`<context-param>`用于设置全局的初始化参数,这些参数将在整个Web应用程序的...
了解 web.xml 的配置信息和加载顺序对于理解框架的流程至关重要。在 web.xml 中,<context-param> 配置起着非常重要的作用,它在 web 项目启动时发挥着关键的作用。 首先,让我们来了解一下 web 项目的启动过程。在...
同时,了解和掌握`web.xml`的配置技巧,可以帮助开发者更好地优化应用性能,比如通过调整过滤器的执行顺序、合理设定URL模式等。 总之,`web.xml`配置文件在Struts2.0框架中起着桥梁和纽带的作用,连接了用户的请求...
web.xml文件的结构首先需要遵守XML规范,它必须以XML声明开始,指出该文件使用的是哪个版本的XML,同时声明字符编码,以确保文件能够被正确读取和解释。例如: ```xml <?xml version="1.0" encoding="UTF-8"?> ``` ...
首先,当Web应用程序启动时,Web容器(如Tomcat、Jetty等)会读取web.xml文件。在这个过程中,它会首先处理`<listener>`和`<context-param>`这两个元素。`<listener>`定义了监听器,这些监听器在Servlet上下文...
1. 当一个WEB项目启动时,Web容器首先读取web.xml文件,解析其中的和节点。 2. 随后,容器创建一个Servlet上下文(ServletContext),作为整个Web应用程序共享的数据存储区。 3. 被转化为键值对,并存储在...
过滤器(`filter`)负责拦截和修改请求或响应,它们的初始化顺序与在`web.xml`中的顺序一致,而实际调用`doFilter()`方法的顺序则取决于`filter-mapping`的顺序。 关于`web.xml`的结构,其根元素是`<web-app>`,并...
在Java Web开发中,`web.xml`是应用的部署描述符,它包含了应用程序的各种配置信息。其中,`context-param`和`init-param`是两个重要的元素,用于设置应用级和Servlet级的初始化参数。理解它们的用法和如何在Servlet...
它的主要任务是读取`build.xml`文件,并根据其中的指令执行相应的构建任务,如编译源代码、打包、测试和部署。Ant的灵活性和可扩展性使得它可以适应各种复杂的项目结构。 2. **build.xml文件结构** `build.xml`...
这个监听器是基于Servlet容器(如Tomcat、Jetty等)的,当Web应用启动时,它会读取配置文件(通常是`web.xml`),创建并加载ApplicationContext。如果在这个过程中遇到问题,比如`ClassNotFoundException`,那通常...
"-//GetAhead Limited//DTD Direct Web Remoting 1.0//EN" "http://www.getahead.ltd.uk/dwr/dwr10.dtd"> 整个配置文件的大体结构如下: <creator id="..." class="..."/> <converter id="..." class="..."/>...