前言
Servlet的请求路径配置
注解配置
多个请求路径配置
1
| @WebServlet(urlPatterns = "/")
|
1
| @WebServlet(urlPatterns = {"/", "/"})
|
配置规则
精准匹配
name
:请求的路径名
1
| @WebServlet(urlPatterns = "/name")
|
目录匹配
dir
:请求的目录名
1
| @WebServlet(urlPatterns = "/dir/*")
|
- 如果一个请求同时满足精确匹配和目录匹配,那么精确匹配的优先级更高
扩展名匹配
html
:请求的扩展名
1
| @WebServlet(urlPatterns = "*.html")
|
任意匹配
1
| @WebServlet(urlPatterns = "/")
|
- 如果配置
/
,会覆盖Tomcat默认的DefaultServlet
。默认的DefaultServlet
能处理静态资源的请求,如果覆盖了DefaultServlet
,那么所有静态资源都无法访问
1
| @WebServlet(urlPatterns = "/*")
|
- 如果一个请求同时满足
/
和/*
,那么/*
的优先级更高
xml配置
<servlet-name></servlet-name>
:配置servlet名称,用于绑定类和请求路径的映射关系,<servlet></servlet>
和<servlet-mapping></servlet-mapping>
中的<servlet-name></servlet-name>
应保持一致
<servlet-class></servlet-class>
:定义servlet类
<url-pattern>/</url-pattern>
:定义请求路径
src/main/webapp/WEB-INF/web.xml
1 2 3 4 5 6 7 8
| <servlet> <servlet-name></servlet-name> <servlet-class>com.MyServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name></servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
|
完成
参考文献
哔哩哔哩——黑马程序员