url-pattern的配置
url-pattern配置方式共有三种:
- 完全路径匹配:
以 /\color{red}{/}/ 开始
例如:
<servlet>
<servlet-name>LifeCycleServlet</servlet-name>
<servlet-class>pers.zhang.servlet.LifeCycleServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LifeCycleServlet</servlet-name>
<!-- 访问路径 -->
<url-pattern>/life</url-pattern>
<!-- <url-pattern>/aaa/life</url-pattern> -->
<!-- <url-pattern>/aaa/bbb/life</url-pattern> -->
</servlet-mapping>
- 目录匹配:
以 /\color{red}{/}/ 开始,需要以 ∗\color{red}{*}∗ 结束
例如:
<servlet>
<servlet-name>LifeCycleServlet</servlet-name>
<servlet-class>pers.zhang.servlet.LifeCycleServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LifeCycleServlet</servlet-name>
<!-- aaa目录下的所有-->
<url-pattern>/aaa/*</url-pattern>
<!-- <url-pattern>/aaa/bbb/*</url-pattern> -->
</servlet-mapping>
- 扩展名匹配:
不能\color{red}{不能}不能 以 /\color{red}{/}/ 开始,以∗\color{red}{*}∗ 开始的。
例如:
<servlet>
<servlet-name>LifeCycleServlet</servlet-name>
<servlet-class>pers.zhang.servlet.LifeCycleServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>LifeCycleServlet</servlet-name>
<!-- 以.da结尾的-->
<url-pattern>*.do</url-pattern>
<!-- /*.dao 是错误的写法!!! -->
</servlet-mapping>
- 缺省路径: /\color{red}{/}/
通常情况访问html页面时,首先从当前web项目的web.xml文件寻找匹配的路径,如果没有找到,再从tomcat默认的web.xml匹配,将使用缺省的servlet。
注意:tomcat获得匹配路径时,优先顺序为:1>2>3>4\color{red}{注意:tomcat获得匹配路径时,优先顺序为:1 > 2 > 3 > 4}注意:tomcat获得匹配路径时,优先顺序为:1>2>3>4
开发中的路径编写:
相对路径:
都是需要找位置相对关系,不能以 / 开始。
- ./ 当前路径
- ../ 上一级目录
绝对路径:
绝对路径不要找位置相对关系,以 / 开始。
绝对路径中分为客户端路径和服务器路径
-
客户端路径一定要加工程名\color{red}{工程名}工程名
/JavaEEDemo/Life -
服务器路径不需要加工程名
/LIFE

本文详细解析了web应用中URL-Pattern的三种配置方式:完全路径匹配、目录匹配及扩展名匹配,阐述了如何通过这些配置精准定位和映射servlet,同时介绍了web.xml中的路径匹配优先级和路径编写规范。
451

被折叠的 条评论
为什么被折叠?



