Servlet中<url-pattern>的优先级
我们可以从简单的一个demo中体现出来
这个demo模块有web框架支持
例如我们写一Hello,Servlet
首先我们先在pom.xml中配置servlet
<dependencies>
<!-- https://mvnrepository.com/artifact/jakarta.servlet/jakarta.servlet-api -->
<dependency>
<groupId>jakarta.servlet</groupId>
<artifactId>jakarta.servlet-api</artifactId>
<version>5.0.0</version>
<scope>provided</scope>
</dependency>
其次创建一个类:helloServlet

然后在web.xml中注册servlet,映入我们写好的helloServlet类;

<url-pattern>去掉上下文路径剩余的路径</url-pattern>
匹配顺序
(1)精准匹配(优先级最高)
(2)路径匹配
(3)后缀名匹配
(4)缺省匹配
1、精准匹配
在<url-pattern>标签中设置精准路径,地址栏中只有输入正确的路径才能匹配对应的servlet映射

2、路径匹配
在标签中设置路径,地址栏中输入相同路径下的任何路径都会匹配对应的servlet映射
如:hello下的所有路径都会匹配,并实现<servlet-class>标签下的类

3、后缀名匹配
在标签中设置后缀名,地址栏中输入任何路径,文件名的后缀相对应就能匹配对应的servlet,实现<servlet-class>


4、默认匹配
未在<url-pattern>标签中设置时,执行默认的index.jsp文件

5、缺省匹配
以上servlet未能找到时,就用默认的servlet;


本文来自博客园,作者:mo-de,转载请注明原文链接:https://www.cnblogs.com/mo-de/p/16716873.html

浙公网安备 33010602011771号