<?xml version="1.0" encoding="UTF-8"?><!-- 标明使用的XML版本和文档编码,此项必须位于第一行,之前是空行注释都不行 -->

 <!--
web.xml学名为配置部署文件,是web应用的入口文件,用于声明系统的各项配置,此文件不是必须的,但也只是最简单的静态项目才没有。
xml文件中大小写敏感,书写次序敏感,自上而下加载,所以配置此文件时要注意标签的顺序和大小写。
--> <!--
文档声明和系统配置声明,web-app标签内为具体的部署配置项。
xmlns为xml文件的命名空间,xmlns:xsi表示文档遵循的标签规范,xsi:schemaLocation表示xmlschema地址。
以上三项内容可使用IDE生成或者在web容器配置文件内找到。
-->
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> <!-- 应用名称,提供GUI工具可能会用来标记这个特定的Web应用的一个名称。 -->
<display-name>Test</display-name> <!-- 应用描述,提供网站的描述 -->
<description>此系统用来测试web.xml的各项配置参数</description> <!--
此元素为空标签,它的存在与否可以指定系统是否可分布式处理。普通系统不添加此标签。
如果web.xml中出现这个元素,则代表站台在开发时已经被设计为能在多个JSP Container 之间分散执行。
-->
<distributable/> <!--
上下文参数,此项用于声明系统初始化时的参数。子元素均为唯一、必选元素。
在servlet中可以通过getServletContext().getInitParameter("context/param");获取此参数。
在JSP中可以通过${initParam.param_name}获取此参数,例如此系统使用${initParam.testInitParam}。
-->
<context-param>
<param-name>testInitParam</param-name>
<param-value>1</param-value>
</context-param> <!--
过滤器配置,filter和filter-mapping成对出现,如果没有后者,前者配置可以说是无效。
filter和filter-mapping中的filter-name相同,表示过滤器名;
filter-class表示过滤器的类地址,为Java类路径,不带.java后缀;
async-supported为servlet 3.0新增的属性,标识过滤器是否支持异步处理,默认为false;
init-param表示过滤器初始化时的参数,在过滤器中可通过FilterConfig.getInitParameter(filter-name)获取;
url-pattern表示过滤器处理的请求类型,/*表示过滤所有请求,*.do表示过滤后缀名是do的请求;
-->
<filter>
<filter-name>test</filter-name>
<filter-class>test.TestFilter</filter-class>
<async-supported>true</async-supported>
<init-param>
<param-name>test</param-name>
<param-value>1</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>test</filter-name>
<url-pattern>*.do</url-pattern>
<url-pattern>*.html</url-pattern>
<url-pattern>/*</url-pattern>
</filter-mapping> <!--
该元素用来注册一个监听器类,常与context-param联合使用。。
监听程序中某些属性的变化,具体监听哪些事件根据其实现的接口来定。
HttpSessionListener,HttpSessionAttributeListener,ServletContextListener, ServletContextAttributeListener
-->
<listener>
<listener-class>test.TestListener</listener-class>
</listener> <!--
Servlet配置,参数含义和Filter类似,此处定义Servlet后在web.xml文件中其他地方引用时可直接引用servlet-name。
init-param表示初始化时的参数,Servlet的参数只能在init()方法内拿到,使用this.getInitParameter("test");
-->
<servlet>
<servlet-name>testServlet</servlet-name>
<servlet-class>test.TestServlet</servlet-class>
<init-param>
<param-name>test</param-name>
<param-value>1</param-value>
</init-param>
<async-supported>true</async-supported>
</servlet>
<servlet-mapping>
<servlet-name>testServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping> <!--
session相关配置。
session-timeout表示session超时时间,单位为分钟,为0时表示永不超时,建议设置超时时间,可以一定量的减少session劫持攻击;
tracking-mode表示会话中JSESSIONID存储的位置,可选参数为COOKIE、URL、SSL,推荐使用cookie配合http-only使用,可以通过隐藏会话ID减少session劫持攻击;
cookie-config设置与cookie相关的安全配置,详细参数如下:
name设置cookie的键名
domain设置cookie的有效范围,参数内容为域名,常用与跨域访问cookie,例如.baidu.com表示此cookie在百度域名下可用。
path表示cookie所在的目录,默认为/表示根目录且所有文件都能访问此cookie,/test/表示cookie在/test/下且只有此目录下的文件可以访问。
http-only表示此cookie只能通过HTTP方式进行访问,JS无法读取或修改,此项可以增加网站访问的安全性。
secure为true时表示此cookie只能通过HTTPS连接传递到服务器,而HTTP 连接则不会传递该信息。注意是从浏览器传递到服务器,服务器端的Cookie对象不受此项影响。
max-age以秒为单位表示cookie的生存期,默认为-1表示是临时存在,浏览器关闭时就会消失。
-->
<session-config>
<session-timeout>30</session-timeout>
<cookie-config>
<name>test</name>
<domain>.test.com</domain>
<path>fasdfa</path>
<http-only>true</http-only>
<secure>true</secure>
<max-age>-1</max-age>
</cookie-config>
<tracking-mode>COOKIE</tracking-mode>
</session-config> <!--
指定浏览器对于指定格式的处理方式
extension文件的扩展名,例如.doc/.xls/.ppt等
mime-type对应文件类型的处理方式
-->
<mime-mapping>
<extension>.docx</extension>
<mime-type>application/vnd.openxmlformats-officedocument.wordprocessingml.template</mime-type>
</mime-mapping> <!-- 首页面,配置项可以有多个,但会根据上下顺序来加载,如果加载项存在则不会继续,例如index.html存在,则不会加载index.jsp -->
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list> <!-- 错误页面配置,有两种方式,一是根据错误代码配置,二是根据错误类型配置 -->
<error-page>
<error-code>404</error-code>
<location>/test/error.jsp</location>
</error-page>
<error-page>
<exception-type>java.lang.NullException</exception-type>
<location>/test/error.jsp</location>
</error-page> <!--
JSP页面属性配置
taglib可出现多次,表示引入的自定义标签库,taglib-uri表示标签库引用地址,taglib-location表示标签库本地地址
jsp-property-group主要用于设置JSP相关属性
url-pattern表示匹配哪些文件,例如*.jsp表示所有的jsp文件
el-ignored表示是否开启EL表达式支持
page-encoding设置用户编码
scripting-invalid设置脚本可用性,如果为true则表示JSP页面不支持<%scripting%>语法
is-xml为true表示符合url-pattern的文件为JSP页面
include-prelude向符合url-pattern的文件开头添加此文件中的内容类似于jsp:include
include-coda向符合url-pattern的文件结尾添加此文件中的内容类似于jsp:include
deferred-syntax-allowed-as-literal表示JSP是否支持#{}表达式,jsp2.1及以上设置为true,2.0及以下设置为false,否则${}表达式无法解析。
trim-directive-whitespaces为true时表示删除模板文件编译时产生的空行,可以在一定程度上增加浏览器解析速度,jsp2.1及其以上支持
buffer设置缓冲区的大小,单位KB
error-on-undeclared-namespace,默认为false,为true时表示页面编译时如果JSP页面中引用了未声明的标签时会报错(原文: If it is set to true, then an error must be raised during the translation time, when an undeclared tag is used in a JSP page)
-->
<jsp-config>
<taglib>
<taglib-uri>http://test.net </taglib-uri>
<taglib-location>/WEB-INF/test.tld</taglib-location>
</taglib>
<jsp-property-group>
<url-pattern></url-pattern>
<el-ignored>false</el-ignored>
<page-encoding>UTF-8</page-encoding>
<scripting-invalid>true</scripting-invalid>
<is-xml>true</is-xml>
<include-prelude>test.jsp</include-prelude>
<include-coda>test.jsp</include-coda>
<deferred-syntax-allowed-as-literal>true</deferred-syntax-allowed-as-literal>
<trim-directive-whitespaces>true</trim-directive-whitespaces>
<buffer>10</buffer>
<error-on-undeclared-namespace>true</error-on-undeclared-namespace>
</jsp-property-group>
</jsp-config> <!--
待考证标签,在以后的工作中有机会用到时会进行更新
security-constraint,login-config,security-role,env-entry,ejb-ref,ejb-local-ref,((service-ref*)), resource-ref*,
resource-env-ref*, message-destination-ref*, persistence-context-ref*, persistence-unit-ref*, post-construct*,
pre-destroy*,data-source*)) | message-destination | locale-encoding-mapping-list)) | absolute-ordering)*
-->
</web-app>

web.xml常用标签整理(不定期更新)的更多相关文章

  1. web.xml常用元素配置

    tomcat服务器: tomcat是一个WEB服务器,所有的j2ee WEB程序可以在此处运行. tomcat服务器是一个符合j2ee标准的WEB服务器.则J2ee的EJB程序无法在此处运行. 如果要 ...

  2. web.xml常用配置详解

    web.xml常用配置详解 context-param 指定 ServletContext(上下文) 配置文件路径,基本配置一般是Spring配置文件,或者是spring-security的配置文件. ...

  3. web.xml常用元素

    web.xml文件是用来初始化配置信息:比如welcome页面.servlet.servlet-mapping.filter.listener.启动加载级别等.当你的web工程没用到这些时,你可以不用 ...

  4. html常用标签整理

    html文档结构 <!DOCTYPE html> <html lang="zh-CN"> #这个lang表示语言,zh-CN中文的意思,整个文档的内容以中文 ...

  5. JSP web.xml <jsp-config>标签使用详解

    <jsp-config> 包括 <taglib> 和 <jsp-property-group> 两个子元素.其中<taglib> 元素在JSP 1.2  ...

  6. 一文懂SSM项目中的web.xml常用配置项

    做web后端工程师,逃不过的web.xml,我们都知道配置这个文件是日常工作了,那么我们来把一些必须知道知识点梳理下. 我们把web项目启动的时候,首先加载的就是web.xml这个文件,只有这个文件所 ...

  7. web@HTML常用标签分类,标签嵌套规则

    一.html标签又叫做html元素,它分为块级元素和内联元素(也可以叫做行内元素),都是html规范中的概念.1.块级元素块级元素是指本身属性为display:block;的元素.因为它自身的特点,我 ...

  8. Java Web - HTML 常用标签和符号

    1.Html 注释,pre,&lt,&gt,&nbsp,超级链接,marquee,img标签 <html> <head> <title>常用 ...

  9. XML常用标签的介绍

    1.引言 在使用Java时经常遇到使用XML的情况,而因为对XML不太了解,经常配置时粘贴复制,现在对它进行总结,以备以后使用. 2.XML常见的定义 (1)XML(Extensible Markup ...

随机推荐

  1. Python自动化运维之1、Python入门

    Python简介 python是吉多·范罗苏姆发明的一种面向对象的脚本语言,可能有些人不知道面向对象和脚本具体是什么意思,但是对于一个初学者来说,现在并不需要明白.大家都知道,当下全栈工程师的概念很火 ...

  2. ASP.NET MVC轻教程 Step By Step 11——数据注解

    将验证规则写在Cotroller里不是一个好办法,这样会显得代码很啰嗦,更重要的是将业务逻辑写入Controller,使得Controller变得更“重”,不符合设计原则.更好的办法是使用验证注解属性 ...

  3. German Collegiate Programming Contest 2013:B

    一个离散化的简单题: 我用的是STL来做的离散化: 好久没写离散化了,纪念一下! 代码: #include<cstdio> #include<cstring> #include ...

  4. 如何使用 Docker、ECS、Terraform 重建基础架构?

    早期 Segment 基础架构普遍组合在一起.我们通过 AWS 界面设定实例,使用许多闲散的 AMI,并且采用三种不同的部署方式. 然而随着商业的飞速发展,工程师团队的规模不断扩大,基础架构的复杂度也 ...

  5. Ajaxupload插件超级简单使用(php的ci框架)

                         Ajaxupload简单使用  友情提示:1.蓝色文字为必修改内容.2.#字符后面是解释该代码段的主要内容  备注: 该实例是用php的ci框架直接接收图片并 ...

  6. java中如何实现全局变量

    有时一个项目中会多处涉及到路径,当你把这个项目移植到别的电脑上时就要一一修改这些路径,过程十分繁琐,所以一个全局变量在这时是必不可少的. 遗憾的是java等oo语言并没有全局变量,这怎么办呢?下面介绍 ...

  7. 第1章 开发环境安装和配置(二)安装JDK、SDK、NDK

    原文 第1章 开发环境安装和配置(二)安装JDK.SDK.NDK 无论是用C#和VS2015开发Androd App还是用Java和Eclipse开发Androd App,都需要先安装JDK和Andr ...

  8. 《Effective C++》条款26 防卫潜伏的ambiguity模棱两可的状态

    每个人都有思想.有些人相信自由经济学,有些人相信来生.有些人甚至相信COBOL是一种真正的程序设计语言.C++也有一种思想:它认为潜在的二义性不是一种错误.ambiguity 这是潜在二义性的一个例子 ...

  9. mysql常见字符串处理函数结束

    一.简明总结 ASCII(char) 返回字符的ASCII码值 BIT_LENGTH(str) 返回字符串的比特长度 CONCAT(s1,s2…,sn) 将s1,s2…,sn连接成字符串 CONCAT ...

  10. 【HDOJ】3308 LCIS

    线段树,题目感觉比较难,看别人思路做的.还得继续练这个专题. #include <iostream> #include <cstdio> #include <cstrin ...