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>
扫描二维码关注公众号,回复:
11523681 查看本文章
匹配顺序
1 精确匹配
2 路径匹配,先最长路径匹配,再最短路径匹配
3 扩展名匹配
4 缺省匹配,以上都找不到servlet,就用默认的servlet,配置为<url-pattern>/</url-pattern>