首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Servlet 與 Filter 的 url-pattern 匹配規則詳解:精確路徑、最長路徑、擴展匹配優先級

     編輯:Java 相關知識

Servlet 容器對 URL 匹配有嚴格順序,匹配成功即停止;Filter 為鏈式處理,按 web.xml 定義順序全部執行。

Servlet 匹配四步驟

  1. 精確路徑匹配:/test 優先於 /*
  2. 最長路徑匹配:/test/a/* 優先於 /test/*
  3. 擴展匹配:*.action 類後綴匹配
  4. 默認 Servlet:前三條無匹配時,交給默認 Servlet 或靜態資源

url-pattern 語法分類

  • 以 / 開頭、/* 結尾 → 路徑映射
  • 以 *. 開頭 → 擴展映射
  • / → 默認 Servlet 映射
  • 其他(如 /aa/bb/cc.action)→ 具體映射

常見錯誤

/*.action 同時屬於路徑映射與擴展映射,導致容器無法判斷,應避免使用。

Filter 處理順序

與 filter-mapping 在 web.xml 中定義順序相同,無「唯一匹配」概念,全部按序執行。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved