您的位置:首页 > 其它

部署描述文件web.xml解析(一)总述

2015-05-06 23:07 375 查看

简介

本文主要介绍servlet 3部署描述文件的基本功能、文件格式、作用等,通过阅读本文,可以对部署描述文件有一个总体认识。

命名

每当存在部署描述文件时,它必须被命名为web.xml,并且必须放在WEB-INF目录下。

作用

部署描述文件web.xml用于控制web应用的许多方面,使用web.xml,可以为servlet分配自定义的统一资源定位符URL,规定整个应用程序和特定servlet的初始化参数,控制session会话的失效时间,声明过滤器,声明安全角色,通过声明安全角色来限制web资源的访问权限等。

尽管在Servlet 3中,可以利用注解将资源映射成一个URL模式,但是,如果属于以下情况之一时,仍然需要使用web.xml部署文件:

需要给ServletContext传递初始化参数时;

有多个过滤器,并且想要指定过滤器的调用顺序时

要修改会话超时或过期值时

要限制对某个资源集合的访问,并且提供一种工用户自行完成验证时

部署文件使Java编译过程与部署过程分离:Java开发人员在编写代码时不需要之道特定的操作环境,以利于代码重用;通过编辑web.xml文件,部署应用程序的人员变可以控制应用程序的行为。

格式

web.xml的格式文件如下:
<?xml version="1.0" encoding="UTF-8"?>

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"
metadata-complete="true">
......
<span style="white-space:pre">	</span>
</web-app>

部署描述文件必须以XML头开始,这个头部声明了有效的XML的版本,同时指定了文件的编码格式。

部署描述文件最顶层的元素是web-app,必须声明一个XML Schema实例作为web-app元素的一部分,这个声明告诉服务器servlet规范版本,规定XML Schema文件的位置,该文件用来统一管理文件中的语法结构,所有web-app的子元素都是可选的。

可选的metadata-complete属性用于规定部署描述符是否完整,如果它为true,Servlet/JSP容器就必须忽略针对Servlet的注解。如果该元素设为false,或不存在,那么容器就必须在应用程序的类文件中查找针对Servlet的注解,并对web fragment进行扫描。

关于部署描述文件中的定义和可能出现的每一个元素的规则,可查阅web-app_3_0.xsd Schema,可通过下面的地址下载:
http://java.sun.com/xml/ns/javaee/web-common_3_0.xsd
web-app_3_0.xsd Schema还包含了web-app_3_0.xsd,其中包含了大部分信息,可通过下面的地址下载:

http:
4000
//java.sun.com/xml/ns/javaee/web-app_3_0.xsd

参考资料

1. Servlet与JSP核心编程 第2卷
2. Servlet和JSP学习指南

3. http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/javaee/index.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: