当前位置:网站首页>urlParrern配置
urlParrern配置
2022-07-21 19:20:00 【华为云】
urlParrern配置
之前我们采用注解的方式配置这个访问路径,只设置了一个访问路径。其实还可以配置多个访问路径。就像这样。
@WebServlet(urlPatterns = {"/demo7","/demo07"})
其实我们这样的配置就是一种路径匹配规则或者说是项目匹配访问规则。
下面我们介绍几种匹配规则
1:精确匹配
我们在注解中这样写的话,将来我们访问的化需要通过这个完整的路径来访问项目。
eg:
@WebServlet("/jgdabc/666")
2:目录匹配
eg:
/@WebServlet(urlPatterns = "/user/*") 目录匹配
将来我们访问的时候首先需要输入user,然后后面可以跟上任何路径。
3:扩展名匹配
@WebServlet("*.do")
将来访问的时候前面可以加上任何路径,但是后面需要加上do的扩展名。
4:任意匹配
//@WebServlet("/")//@WebServlet("/*")
任意匹配不建议使用
- 当我们的项目中的Servlet配置了 “/”,会覆盖掉tomcat中的DefaultServlet,当其他的url-pattern都匹配不上时都会走这个Servlet
- 当我们的项目中配置了"/*",意味着匹配任意访问路径
- DefaultServlet是用来处理静态资源,如果配置了"/"会把默认的覆盖掉,就会引发请求静态资源的时候没有走默认的而是走了自定义的Servlet类,最终导致静态资源不能被访问
测试用例
package jgd;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;@WebServlet("/jgdabc/666")//可配置多个访问路径,这是精确匹配//@WebServlet(urlPatterns = {"/demo7","/demo07"})//@WebServlet(urlPatterns = "/user/*") 目录匹配//当精确匹配和目录匹配同时都满足的时候,精确匹配优先级别更高//@WebServlet("*.do") 扩展名匹配//任意匹配// /* 的优先级高于///@WebServlet("/")//@WebServlet("/*")public class ServletDemo7 extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("demo7get..."); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// super.doPost(req, resp); }}
边栏推荐
- Unity C: use this keyword to expand class functions
- Service & Endpoint
- Standard input / output stream
- 东方财富开户安全吗,要什么证件呢
- @resource和@autowired的区别
- 什么是FastAPI异步框架?(全面了解)
- Finalizer of JVM
- Energy principle and variational method note 01: a brief introduction to three analysis methods
- 金仓数据库KingbaseES安全指南--3.1. 用户管理
- 对话框管理器第一章:先热热身
猜你喜欢
随机推荐
HCIP(9)
Energy principle and variational method note 06: variational problems of higher-order derivatives (including higher-order derivatives of functions)
基于卡尔曼滤波的微电网调度(Matlab代码实现)
Continuous improvement of software testing process
Notes on energy principle and variational method 07: variational problem of multiple self variable functions + variational method of conditional extreme value problem + thinking in Chapter 1
Don't step on the "hidden rules" of those testers in the interview
元宇宙时代到来,Soul张璐团队如何打造全新社交体验?
Energy principle and variational method note 10: virtual displacement principle
金仓数据库KingbaseES安全指南--2.2. KingbaseES对数据库安全威胁的预防
el-table-column嵌套el-table-column ,多级表头横向滚动的bug
[Basic] Pointer in C
Lihuadaiyu music player 3.91 source code is open source (add background music to the website)
【Cicadaplayer】vs2019(V142) X64 FFMEPG : error C2169: “lrintf”: 内部函数,不能定义
[814. Binary tree pruning]
Service & Endpoint
d是矩形.
Collection collection overview
11-GuliMall 后台管理中商品系统的分类维护
OSPF comprehensive experiment
多线程 里面 使用AtomicInteger类,保证线程安全