Web.xml配置文件

Web.xml配置文件详解

目录

Web.xml配置文件详解

web.xml文件加载顺序

web.xml文件中的元素

web.xml中部份元素详解


web.xml文件加载顺序

web.xml文件是用来初始化配置信息:比如Welcome页面、servlet、servlet-mapping、filter、listener、启动加载级别等。

web.xml文件加载顺序如下:

  1. 启动一个WEB项目,WEB容器会先去读取它的配置文件web.xml,读取<context-param>和<listener>两个节点。
  2. 容器创建一个ServletContext(servlet上下文,也就是四大作用域之一的application),这个web项目的所有部分都讲共享这个上下文。
  3. 容器将<context-param>转换为键值对,并交给servletContext。在servlet中可根据方法获得参数值。
  4. 容器创建<listener>中的类实例,创建监听器。
  5. 加载filter。
  6. 加载Servlet,并在第一次请求时创建Servlet实例,或者当web容器启动时自动创建(需配置)。

web.xml文件中的元素

在web.xml文件中,根元素为<web-app></web-app>,该元素下包含23个子元素,且这些子元素都是可选的。

23个子元素
icon? display-name? description?distributable? context-param* filter* filter-mapping*
listener* servlet* servlet-mapping* session-config?mime-mapping* welcome-file-list?error-page*
 taglib* resource-env-ref* resource-ref*security-constraint* login-config? security-role*env-entry*
ejb-ref* ejb-local-ref*     

 

注:

  1. 问号(?)表示子元素是可选的,而且只能出现一次。
  2. 星号(*)表示子元素可在部署描述符中出现零次或多次。
  3. 在Servlet 2.3中,子元素必须按照DTD文件语法描述中指定的顺序出现。 比如:如果部署描述符中的<web-app>元素有<servlet>和<servlet-mapping>两个子元素,则<servlet>子元素必须出现在<servlet-mapping>子元素之前。在Servlet2.4中,顺序并不重要。

web.xml中部份元素详解

  1. <display-name></display-name>定义了web应用的名称,可以在http://localhost:8080/manager/html中显示。
  2. <distributable/>告诉servlet/JSP容器,Web容器中部署的应用程序适合在分布式环境下运行。
  3. <context-param></context-param>上下文初始化参数
  4. <session-config></session-config>用于设置容器的session参数。比如:<session-timeout> 用于指定http session的失效时间(单位分钟)。
  5. <listener></listener>为web应用程序定义监听器,监听器用来监听各种事件。
  6. <filter></filter>用来定义Filter过滤器。主要用于对用户请求request进行预处理,也可以对Response进行后处理。
  7. <servlet></servlet>定义Servlet类,用于处理及响应客户的请求。
  8. <welcome-file-list></welcome-file-list>用来指定首页文件名称。
  9. <error-page></error-page>用来配置错误页面,可以通过异常类型或者错误代码来配置。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值