1 精確匹配
<url-pattern>中配置的項必須與url完全精確匹配。
注:<url-pattern>/user/*/hi</url-pattern> 這裏的*不是通配符,是精確匹配
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/test/user</url-pattern>
</servlet-mapping>
2 擴展名匹配
以“*.”開頭的字符串被用於擴展名匹配
注:<url-pattern>/user/*.html</url-pattern> 錯誤,會產生IllegalArgumentException
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>*.htm</url-pattern>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
3 路徑匹配
以“/”字符開頭,並以“/*”結尾的字符串用於路徑匹配
注:<url-pattern>/user/*/hi</url-pattern> 這裏不是路徑匹配,是精確匹配
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<url-pattern>/user/*</url-pattern>
<url-pattern>/*</url-pattern>
</servlet-mapping>
4 缺省匹配(默認匹配)
<url-pattern>/</url-pattern>
匹配順序
1 精確匹配
2 路徑匹配,先最長路徑匹配,再最短路徑匹配
3 擴展名匹配
4 缺省匹配,以上都找不到servlet,就用默認的servlet,配置爲<url-pattern>/</url-pattern>