【笔记】Servlet的请求路径配置

前言

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>

完成

参考文献

哔哩哔哩——黑马程序员