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. VRRP协议原理与配置

    一.VRRP协议概述 1.1.VRRP协议基本概念 局域网中的用户终端通常采用配置一个默认网关的形式访问外部网络,如果此时默认网关设备发生故障,将中断所有用户终端的网络访问,这很可能会给用户带来不可预 ...

  2. Java文件和Java包结构

    Java中的包概念 Java中的包是封装一组类,子包和接口的机制.软件包用于: 防止命名冲突.例如,可以有两个名称分别为Employee的类,college.staff.cse.Employee和co ...

  3. Jackson格式化时间和科学计数法问题

    1. 首先如果有自定义   WebMvcConfigurer 或者 WebMvcConfigurationSupport 的,一定不要在上面加 @EnableWebMvc 注解,因为这个注解会覆盖掉s ...

  4. 题解 b

    传送门 考场上只会暴力 \(n^4\) DP,部分分还写炸了 但其实这个DP可以前缀和优化到 \(n^3\) ,我觉得没有这档部分分就没写 但其实是有这一档的,我没有看出来-- 正解想不到 如果我们已 ...

  5. zabbix监控rabbitmq队列消费状态

    使用rabbitmqctl 管理 mq -n 指定节点 [root@logging-master zabbix]# rabbitmqctl -n rabbit@localhost list_queue ...

  6. MySQL主从复制与Atlas读写分离

    配置主从复制 1. 增加主从配置 # 主库配置文件 server-id = 1 log-bin = /var/lib/mysql/mysql-bin expire_logs_days = 10 ski ...

  7. flutter实现文字超出最大宽度显示省略号

    Container( width: 60, child: Text( '...', maxLines: 1, overflow: TextOverflow.ellipsis, ), ) 给Text外层 ...

  8. wpf 获得exe的运行路径

    System.Reflection.Assembly.GetEntryAssembly().Location

  9. Java 数组结构

    数组是最常见的一种数据结构,是相同类型的.用一个标识符封装到一起的基本类型数据序列或对象序列.可以用一个统一的数组名和下标来唯一确定数组中的元素.实质上数组是一个简单的线性序列,因此数组访问起来很快. ...

  10. 【Python机器学习实战】决策树与集成学习(三)——集成学习(1)

    前面介绍了决策树的相关原理和实现,其实集成学习并非是由决策树演变而来,之所以从决策树引申至集成学习是因为常见的一些集成学习算法与决策树有关比如随机森林.GBDT以及GBDT的升华版Xgboost都是以 ...