url-pattern是一個定義在servlet映射中的匹配模式,用于指定哪些URL請求應該由相應的servlet來處理。在Java Web應用程序中,可以通過在web.xml文件中使用
url-pattern可以是一個具體的URL路徑,也可以是一個通配符模式。常見的url-pattern的匹配模式有以下幾種:
精確匹配:例如/hello
,表示只有當URL路徑 exactly matches “/hello” 時才會匹配。
后綴匹配:例如*.do
,表示只有當URL路徑以 “.do” 結尾時才會匹配。
前綴匹配:例如/admin/*
,表示只有當URL路徑以 “/admin/” 開頭時才會匹配。
全部匹配:例如/*
,表示任何URL路徑都會匹配。
擴展名匹配:例如*.
,表示只有當URL路徑以指定的擴展名結尾時才會匹配。
URL匹配是根據最長匹配原則進行的,即選擇最長的匹配模式進行處理。如果有多個servlet具有相同的URL匹配模式,服務器將選擇第一個匹配的servlet來處理請求。
例如,以下是一個配置了url-pattern的示例:
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>com.example.HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
上述配置指定了一個名為HelloServlet的servlet,并將其映射到路徑為"/hello"的URL。當用戶訪問"/hello"時,該servlet將被調用來處理請求。