zoukankan      html  css  js  c++  java
  • JavaWeb 之 Servlet的 urlPattern映射路径

    一、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:扩展名来匹配

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

  • 相关阅读:
    尝试一下搭博客
    python IO
    python OOP
    杂笔记
    codeforces 217E 【Alien DNA】
    dfs序七个经典问题(转)
    poj 1945 Power Hungry Cows A*
    NOIP 2012 洛谷P1081 开车旅行
    洛谷 P1924 poj 1038
    poj 2176 folding
  • 原文地址:https://www.cnblogs.com/niujifei/p/15151967.html
Copyright © 2011-2022 走看看