web.xml详述:

web.xml 是每个Java web 项目的必备文件,又叫做部署描述符,Servlet规范中定义的,是web应用的配置文件。

概念:

、部署描述符文件就像所有XML文件一样,必须以一个XML头开始。这个头声明可以使用的XML版本并给出文件的字符编码。DOCYTPE声明必须立即出现在此头之后。这个声明告诉服务器适用的servlet规范的版本(如2.2或2.3)并指定管

理此文件其余部分内容的语法的DTD(Document Type Definition,文档类型定义)。所有部署描述符文件的顶层(根)元素为web-app。请注意,XML元素不像HTML,他们是大小写敏感的。因此,web-App和WEB-APP都是不合法的,web-

app必须用小写。

部署文件实例:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>

</web-app>

注:所有的相关配置文件都在这个<webappp></webapp>当中。

web.xml常用标签元素以及功能:

1    <welcome-file>index.jsp</welcome-file> 

这个标签元素中主要指定了JSP文件,即欢迎界面,同时一个javaweb项目可以有多个欢迎界面。

2 <display-name>

javaweb项目的相关应用名称。

3 <description></desciiption>

javaweb的应用描述。

4 <context-param>

context-param 元素用来设定web应用的环境参数(context),它包含两个子元素:

param-name和param-value.

<param-name>参数名称</param-name>

设定Context名称

<param-value>值</param-value>

设定Context名称的值

5 <filter>,<filter-mapping>

filter元素用来设定web应用的过滤器,它的两个主要子元素filter-name和filter-class用来定义Filter所对应的class

<filter-name>Filter的名称</filter-name>

定义Filter的名称

<filter-class>Filter的类名称</filter-class>

定义Filter的类名称

filter-mapping 元素的两个主要子元素filter-name和url-pattern.用来定义Filter所对应的URL.

<filter-name>Filter的名称</filter-name>

定义Filter的名称.

<url-pattern>URL</url-pattern>

Filter所对应的RUL.例如:<url-pattern>/Filter/*</url-pattern>

7:<listener>

listener元素用来定义Listener接口,它的主要子元素为<listener-class>

<listen-class>Listener的类名称</listener-class>

定义Listener的类名称

<listener>

8 <servlet>、<servlet-mapping>

servlet元素的两个主要子元素servlet-name和servlet-class用来定义servlet所对应的class

<servlet-name>servlet的名称</servlet-name>

定义servlet的名称

<servlet-class>servlet的类名称</servlet-class>

定义servlet的类名称

servlet-mapping元素包含两个子元素servlet-name和url-pattern.用来定义servlet所对应URL.

<servlet-name>Servlet的名称</servlet-name>

定义Servlet的名称.

<url-pattern>Servlet URL</url-pattern>

定义Servlet所对应的RUL.例如:<url-pattern>/Servlet/*</url-pattern>

</servlet-mapping>

9 <session-cofing>

session-config包含一个子元素session-timeout.定义web应用中的session参数.

<session-timeout>分钟</session-timeout>

定义这个web站台所有session的有效期限.单位为分钟.

例:<session-timeout>30</session-timeout>

10  <mime-mapping>

mime-mapping包含两个子元素extension和mime-type.定义某一个扩展名和某一MIME Type做对映.

<extension>扩展名名称</extension>

扩展名称

<mime-type>MIME格式</mime-type>

MIME格式.

11 <welcome-file-list>

welcome-file-list包含一个子元素welcome-file.用来定义首页列单.

<welcome-file>用来指定首页文件名称</welcome-flie>

welcome-file用来指定首页文件名称.我们可以用<welcome-file>指定几个首页,而服务器会依照设定的顺序来找首页.

12 <error-page>

error-page元素包含三个子元素error-code,exception-type和location.将错误代码(Error Code)或异常(Exception)的种类对应到web应用资源路径.

<error-code>错误代码</error-code>

HTTP Error code,例如: 404、403

<exception-type>Exception</exception-type>

一个完整名称的Java异常类型

<location>/路径</location>

在web应用内的相关资源路径

13 <jsp-config>

jsp-config元素主要用来设定JSP的相关配置,<jsp:config>包括<taglib>和<jsp-property-group>两个子元素.其中<taglib>元素

在JSP 1.2时就已经存在了;而<jsp-property-group>是JSP 2.0新增的元素.

<taglib>

taglib元素包含两个子元素taglib-uri和taglib-location.用来设定JSP网页用到的Tag Library路径.

<taglib-uri>URI</taglib-uri>

taglib-uri定义TLD文件的URI,JSP网页的taglib指令可以经由这个URI存取到TLD文件.

<taglib-location>/WEB-INF/lib/xxx.tld</taglib-laction>

TLD文件对应Web站台的存放位置.

</taglib>

<jsp-property-group>

jsp-property-group元素包含8个元素,分别为:

<description>Description</descrition>

此设定的说明

<display-name>Name</display-name>

此设定的名称

<url-pattern>URL</url-pattern>

设定值所影响的范围,如:/CH2 或者/*.jsp

<el-ignored>true|false</el-ignored>

若为true,表示不支持EL语法.

<scripting-invalid>true|false</scripting-invalid>

若为true表示不支持<%scription%>语法.

<page-encoding>encoding</page-encoding>

设定JSP网页的编码

<include-prelude>.jspf</include-prelude>

设置JSP网页的抬头,扩展名为.jspf

<include-coda>.jspf</include-coda>

设置JSP网页的结尾,扩展名为.jspf

</jsp-property-group>

</jsp-config>

15 <resource-env-ref>

resource-env-ref有两个子元素:

<resource-env-ref-name>资源名</resource-env-ref-name>

资源的名称 相对于java:comp/env

<resource-env-ref-type>查找资源时返回的资源类名</resource-env-ref-type>

当web应用查找该资源的时候,返回的Java类名的全称

For example:

<resource-ref>
   <description>JNDI JDBC DataSource</description>
   <res-ref-name>jdbc/data</res-ref-name>
   <res-type>javax.sql.DataSoruce</res-type>
   <res-auth>Container</res-auth>
</resource-ref>
以上就是对Java web的web.xml文件的了解和详述。

java web 项目中web.xml 详解的更多相关文章

  1. Maven学习总结(15)——Maven 项目中pom.xml详解

    <project xmlns="http://maven.apache.org/POM/4.0.0"  xmlns:xsi="http://www.w3.org/2 ...

  2. 一个web项目中web.xml<context-param>的作用

    转   <context-param>的作用:web.xml的配置中<context-param>配置作用1. 启动一个WEB项目的时候,容器(如:Tomcat)会去读它的配置 ...

  3. web项目中web.xml简介

    什么是 XML? XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输数据,而非显示数据 XML 标签没 ...

  4. (转) eclipse项目中.classpath文件详解

    背景:对于java项目中.classpath文件中的相关定义一直不是很了解,有必要进行深入的学习. 1 前言 在使用eclipse或者myeclipse进行Java项目开发的时候,每个project( ...

  5. eclipse项目中.classpath文件详解

    1 前言 在使用eclipse或者myeclipse进行java项目开发的时候,每个project(工程)下面都会有一个.classpath文件,那么这个文件究竟有什么作用? 2 作用 .classp ...

  6. Maven中POM.XML详解

    转自https://blog.csdn.net/jariwsz/article/details/19554137 我们先看一个简单的例子: <project xmlns="http:/ ...

  7. maven web项目中web.xml

    web.xml 不是web工程必须的. web.xml文件用来配置那些东西:欢迎页,servlet,filter等. web.xml文件中定义了多少种标签元素,web.xml 中就可以出现它的模式文件 ...

  8. hello1 web项目中web.xml作用分析

    该web.xml文件包含Facelets应用程序所需的几个元素.使用NetBeans IDE创建应用程序时,将自动创建以下所有内容. 指定项目阶段的上下文参数: <context-param&g ...

  9. 关于IDEA中web项目中web.xml配置文件标红的解决办法

    原文链接 https://blog.csdn.net/qq_33451695/article/details/86684127 解决方法前提:web.xml没有实际错误,但依然被web.xml标红 出 ...

随机推荐

  1. HTML5(十一)——WebSocket 基础教程

    一.为什么要学 WebSocket? websocket 是 HTML5 提供的一种长链接双向通讯协议,使得客户端和服务器之间的数据交换更简单,允许服务端主动向客户端推送数据,并且客户端与服务端只需连 ...

  2. Kong网关安装之Docker版(2)

    1.安装kong管理工具:konga或者kong-dashboard,这里选择konga 拉取konga镜像: sudo docker pull pantsel/konga:0.14.4 初始化kon ...

  3. vue 快速入门 系列 —— vue-cli 下

    其他章节请看: vue 快速入门 系列 Vue CLI 4.x 下 在 vue loader 一文中我们已经学会从零搭建一个简单的,用于单文件组件开发的脚手架:本篇,我们将全面学习 vue-cli 这 ...

  4. Java之Cookie与Session

    Cookie.Session Cookie:服务端生成Cookie发给客户端用于认证 Session:服务端进行进行登记,每人有不同的Session session与cookie的区别 Cookie: ...

  5. Linux搭建Syslog服务器

    在大多数据的Linux发行版中,rsyslog是一个预先安装的标准日志后台进程.在 客户端/服务端 的系统配置中,rsyslog 能扮演两个角色;作为一个日志服务器能从其它设备收集日志信息,而作为一个 ...

  6. FPGA学习过程(二)

    项目:数码管动态显示时间 首先建立一个计时一秒的模块,作为数码管显示的需要 module timer_s( input wire clk, input wire rst_n, output wire ...

  7. 【mysql】mysql简介及高手是如何练成的

    1.什么是mysql  MySQL 是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle 公司. Mysql 是开源的,可以定制的,采用了GPL 协议,你可以修改源码 ...

  8. 解析和遍历一个HTML文档

    如何解析一个HTML文档: String html = "<html><head><title>First parse</title>< ...

  9. SpringBoot学习之thymeleaf的使用

    thymeleaf介绍 简单说, Thymeleaf 是一个跟 Velocity.FreeMarker 类似的模板引擎,它可以完全替代 JSP .相较与其他的模板引擎,它有如下三个极吸引人的特点: 1 ...

  10. css - 全屏

    css - 全屏 heml和body元素的宽高 html与body都是块元素,但它俩比较特殊,宽高由如下定义: 1.默认的宽度=浏览器可视区域的宽度(不包含滚动条),可设置大于可视区域的宽度,但不会计 ...