首页常见问题正文

Servlet映射路径中使用通配符

更新时间:2022-12-30 来源:黑马程序员 浏览量:

IT培训班

  在实际开发过程中,开发者有时会希望某个目录下的所有路径都可以访问同一个Servlet,这时,可以在Servlet映射的路径中使用通配符*。通配符的格式有两种,具体如下。

  ·格式为“*.扩展名”,例如*.do匹配以.do结尾的所有URL地址。

  ·格式为/*,例如/abc/*匹配以/abc开始的所有URL地址。

  需要注意的是,这两种通配符的格式不能混合使用,例如,/abc/*.do是不合法的映射路径。另外,当客户端访问一个Servlet时,如果请求的URL地址能够匹配多条虚拟路径,那么Tomcat将采取最具体匹配原则查找与请求URL最接近的虚拟映射路径。例如,对于如下所示的一些映射关系:

/abc/*        映射到Servlet1
/*            映射到Servlet2
/abc          映射到Servlet3
*.do          映射到Servlet4

  ·当请求URL为/abc/a.html,/abc/*和/*都可以匹配这个URL,Tomcat会调用Servlet1。

  ·当请求URL为/abc、/*、*.do和/abc/*都可以匹配这个URL,Tomcat会调用Servlet3。

  ·当请求URL为/abc/a.do、/*、*.do和/abc/*都可以匹配这个URL,Tomcat会调用Servlet1。

  ·当请求URL为/a.do,/*和*.do都可以匹配这个URL,Tomcat会调用Servlet2。

  ·当请求URL为/xxx/yyy/a.do,*.do和/*都可以匹配这个URL,Tomcat会调用Servlet2。

分享到:
在线咨询 我要报名
和我们在线交谈!