部署描述符 web.xml
google的部署描述符详解: https://cloud.google.com/appengine/docs/flexible/java/configuring-the-web-xml-deployment-descriptor?hl=zh-cn
部署描述符是名为 web.xml 的文件。它位于应用 WEB-INF/ 目录下的 WAR 中。该文件为 XML 文件,其根元素是 <web-app>。
Servlet 和网址路径
web.xml 定义网址路径与通过这些路径处理请求的 servlet 之间的映射。网络服务器使用此配置来标识用于处理给定请求的 servlet,并调用与请求方法相对应的类方法(例如,用于 HTTP GET 请求的 doGet() 方法)。
要将网址映射到 servlet,您需要用 <servlet> 元素声明 servlet,然后通过 <servlet-mapping> 元素定义从网址路径到 servlet 声明的映射。
<servlet> 元素声明 servlet,其中包括用文件中的其他元素指代 servlet 的名称,用于 servlet 的类以及初始化参数。您可以使用具有不同初始化参数的相同类声明多个 Servlet。每个 Servlet 的名称在部署描述符中必须是唯一的
<servlet-mapping> 元素用于指定网址格式以及已声明 servlet 的名称(用于网址与格式匹配的请求)。网址格式可以在格式开头或结尾使用星号 (*) 以指示零个或多个任意字符。(该标准不支持在字符串中间使用通配符,并且不允许在一个格式中使用多个通配符。)格式会与网址的完整路径匹配,从域名后面的正斜杠 (/) 开始(含正斜杠)。
<?xml version="1.0" encoding="UTF-8"?><!-- xml version and encoding -->
<web-app version="4.0" xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"> <!-- 部署描述符会覆盖@WebServlet标注 -->
<servlet>
<servlet-name>SimpleServlet</servlet-name>
<servlet-class>app01c.SimpleServlet</servlet-class> <!-- 这个元素使得Servlet在应用启动时加载而不是爱第一次访问是加载,服务器会根据load-on-startup的大小依次对servlet进行初始化 -->
<load-on-startup>10</load-on-startup>
</servlet> <!-- 如果url-pattern定义的是路径,那么以后所有对这个路径下资源的请求都会由servlet-name中定义的servlet处理;
如果url-pattern定义的是资源格式例如*.do等,那么对于所有符合这种格式的资源的请求都由指定的servlet处理。-->
<servlet-mapping>
<servlet-name>SimpleServlet</servlet-name>
<!-- b个servlet可以使用多个url-pattern规则,<servlet-mapping>标签声明了与该servlet相应的匹配规则,每个<url-pattern>标签代表1个匹配规则; -->
<url-pattern>/simple</url-pattern>
<url-pattern>/other simple</url-pattern>
</servlet-mapping> <servlet>
<servlet-name>WelcomeServlet</servlet-name>
<servlet-class>app01c.WelcomeServlet</servlet-class>
<load-on-startup>20</load-on-startup>
</servlet> <servlet-mapping>
<servlet-name>WelcomeServlet</servlet-name>
<url-pattern>/welcome</url-pattern>
</servlet-mapping> </web-app> <jsp-config>
<jsp-property-group>
<!-- 禁用所有.jsp页面使用EL -->
<url-pattern>*.jsp</url-pattern>
<el-ignored>true</el-ignored>
<scripting-invalid>true</scripting-invalid>
</jsp-property-group>
<!-- 自定义标签设置 -->
<taglib>
<taglib-uri>customtag.MyFirstTag</taglib-uri>
<taglib-location>/WEB-INF/c.tld</taglib-location>
</taglib>
</jsp-config>
JSP部署描述符
应用可以使用 JavaServer Pages (JSP) 实现网页。JSP 是混合使用静态内容(如 HTML)和 Java 代码定义的 Servlet。
App Engine 支持 JSP 自动编译和网址映射。应用 WAR 中文件名以 .jsp 结尾的 JSP 文件(在 WEB-INF/ 外部)自动编译为 Servlet 类,然后映射到与从 WAR 根目录到 JSP 文件的路径等效的网址路径。例如,如果应用在其 WAR 的 register/ 子目录中包含一个名为 start.jsp 的 JSP 文件,App Engine 将编译该文件并将其映射到网址路径 /register/start.jsp。
如果需要更好地控制如何将 JSP 映射到网址,您可以在部署描述符中使用 <servlet> 元素声明它,从而明确指定映射。您可以使用从 WAR 根目录到 JSP 文件的路径指定 <jsp-file> 元素,而不是 <servlet-class> 元素。JSP 的 <servlet> 元素可以包含初始化参数。
例如:我的项目目录

本页面的jsp部署描述符
<?xml version="1.0" encoding="UTF-8"?><!-- xml version and encoding -->
<web-app version="4.0" xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"> <!-- 部署描述符会覆盖@WebServlet标注 -->
<servlet>
<servlet-name>Welcome</servlet-name>
<jsp-file>/welcome.jsp</jsp-file>
<load-on-startup></load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Welcome</servlet-name>
<url-pattern>/welcome</url-pattern>
</servlet-mapping>
</web-app>

部署描述符 web.xml的更多相关文章
- 利用eclipse新建的java web项目没有部署描述符web.xml文件怎么办?
原文转自:http://blog.csdn.net/suyu_yuan/article/details/50947007 利用eclipse新建的Java Web项目没有部署描述符web.xml文件, ...
- 部署描述符web.xml
部署描述符应用场景 需要传递初始参数给ServletContext 有多个过滤器,并要指定调用顺序 需要更改会话超时设置 要限制资源的访问,并配置用户身份验证方式 xsi:schemaLocation ...
- 关于Java Web应用中的配置部署描述符web.xml
一.web.xml概述 位于每个Web应用的WEB-INF路径下的web.xml文件被称为配置描述符,这个 web.xml文件对于Java Web应用十分重要,每个Java Web应用都必须包含一个w ...
- Servlet部署描述符
注:图片如果损坏,点击文章链接:https://www.toutiao.com/i6512237744641540612/ <Servlet简单实现开发部署过程>中的过程,可以概括为以下模 ...
- web.xml 部署描述符元素
在每一个Web应用程序路径的WEB-INF/下和conf/下存在一个Web.xml配置文件,用来设定Web应用程序的配置.在Web.xml中的设定非常多,接下来分段来说明它的各项设定:<?xml ...
- 部署描述符(web.xml)和标注(annotation)
部署描述符(web.xml) 详细信息可在http://www.oracle.com/webfolder/technetwork/jsc/xml/ns/javaee/index.html上下载web- ...
- Servlet注释与部署描述符
值得注意的是,部署描述符优先于注释.换句话说,部署描述符覆盖通过注释机制所规定的配置信息.Web 部署描述符的 3.0 版本在 web-app 元素上包含一种名为 metadata-complete ...
- Servlet_03_部署描述符
二.参考文档 1.Servlet 3.0 之 部署描述符 2.web.xml配置详解 部署描述符文件
- Servlet3.x部署描述符
简介 web.xml即部署描述符,位于WEB-INF目录下.在Servlet3以上版本有提供了注解的方式部署Servlet,因此web.xml是可选的.web.xml大概框架如下: <?xml ...
随机推荐
- MVC_Route层层深入
1.前期准备 新建一个MVC项目,并添加Home和About两个控制器 在这两个控制器对应添加index页面 namespace Study_MVC_Route.Controllers { publi ...
- 关于tcp queue
半连接队列:服务端维护的与客户端保持SYN_RECV状态的连接队列,等待客户端回复,当收到客户端ack后,如果条件允许(全连接队列未达到最大值),服务端进入ESTAB状态,从半连接队列移到全连接队列的 ...
- maven(一) 一 修改仓库存放路径
一.修改仓库存放路径 maven默认的仓库是在C盘下的,这样当重新装系统的时候,仓库就要重新建了.因此可以修改默认存放的位置. 修改仓库的地址在maven安装包(即apache-maven-bin)下 ...
- mysql 案例 ~ 函数汇总
一 简介:通过perf分析活跃的mysql系统函数 二 函数简介 1 buf_calc_page_new_checksum 作用 确认页是否损坏 在buf_calc_page_new_checksu ...
- hadoop-1.2.1集群搭建
继续上一篇:http://www.cnblogs.com/CoolJayson/p/7430654.html 首先需要安装上台虚拟机, 分别为: master, salve1, slave2 1.复制 ...
- SpringSecurityOAuth使用JWT Token实现SSO单点登录
⒈认证服务器 1.添加pom依赖 <dependency> <groupId>org.springframework.boot</groupId> <arti ...
- 【VMware vSphere】vCenter添加主机失败:无法访问指定主机
背景 前一段时间,给一台服务器安装ESXi系统,安装成功之后,通过vCenter在上面安装了一台VDP系统.结果前几天发现服务器掉线,重新连接时出现问题.问题描述如下: 其中错误堆栈具体内容为:在 v ...
- Pytorch复现Faster-RCNN
5月的最后一天,需要写点什么. 通过前几篇博客对Faster-RCNN算是有了一个比较全面的认识,接下来的半个月断断续续写了一些代码,基本上复现了论文.利用torchvision的VGG16预训练权重 ...
- Python-简单打印进度条
import sys,time ): sys.stdout.write("#") sys.stdout.flush() time.sleep(0.1) #sys.stdout.wr ...
- Linux电源管理(7)_Wakeup events framework【转】
转自:http://www.wowotech.net/pm_subsystem/wakeup_events_framework.html 1. 前言 本文继续“Linux电源管理(6)_Generi ...