一、Servlet 的映射路径

  1、一个映射路径

1  <servlet-mapping>
2     <servlet-name>HelloServlet01</servlet-name>
3     <url-pattern>/hello</url-pattern>
4   </servlet-mapping>

 

  2、多个映射路径

 1  <servlet-mapping>
 2     <servlet-name>HelloServlet01</servlet-name>
 3     <url-pattern>/hello</url-pattern>
 4   </servlet-mapping>
 5  <servlet-mapping>
 6     <servlet-name>HelloServlet01</servlet-name>
 7     <url-pattern>/hello1</url-pattern>
 8   </servlet-mapping>
 9  <servlet-mapping>
10     <servlet-name>HelloServlet01</servlet-name>
11     <url-pattern>/hello2</url-pattern>
12   </servlet-mapping>

 

  3、默认请求路径

1   <servlet-mapping>
2     <servlet-name>HelloServlet01</servlet-name>
3     <url-pattern>/*</url-pattern>
4   </servlet-mapping>

 

  4、指定一些后缀或者前缀

1 <servlet-mapping>
2     <servlet-name>HelloServlet01</servlet-name>
3     <url-pattern>*.do</url-pattern>
4     
5 </servlet-mapping>
6 
7 <url-pattern>/hello/*.do</url-pattern>  错误的

    自定义后缀实现请求映射,注意点:*号前面不能加映射的路径

 

  5、优先级问题

    指定了固有的映射路径优先级最高,如果找不到就会走默认的处理请求。

 

二、注解版的 servlet

  urlpartten:Servlet 访问路径

  1、一个 Servlet 可以定义多个访问路径,在使用@WebServlet注解时,可以发现里面的 urlpartten 是一个数组,

String[] urlPatterns() default {};

    这就意味着可以对 Servlet 定义多个路径:

    Demo:

@WebServlet({"/a1","/aa1","/aaa1"})

   2、路径定义规则:

    (1)/xxx:路径匹配,单层路径

    (2)/xxx/xxx:多层路径,目录结构

    (3)*.do:扩展名来匹配

   注意:这里的星号(*)来作为通配符,表示可以匹配一切,但是优先级非常低,只有其他的匹配不到,才会匹配到星号的。

 

posted on 2021-08-17 13:45  格物致知_Tony  阅读(416)  评论(0)    收藏  举报