`
wsmajunfeng
  • 浏览: 498169 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

web.xml中的url-pattern写法规则及匹配过程

 
阅读更多

1.  写法

①完全匹配:以“/”开头,以字母(非“*”)结束

    如:<url-pattern>/test/list.do</url-pattern>

②目录匹配:以“/”开头且以“/*”结尾

   如:<url-pattern>/test/*</url-pattern>

<url-pattern>/*</url-pattern>

③扩展名匹配:以“*.”开头,以扩展名结束

   如:<url-pattern>*.do</url-pattern>

④ “/” 用来表明对应的Servlet为应用默认的Servlet。在这种情况下Servlet路径是请求的URI去掉上下文路径并且路径信息为null。

2.  匹配过程

当一个请求发送到servlet容器的时候,容器先会将请求的url减去当前应用上下文的路径作为servlet的映射url,比如我访问的是http://localhost/test/aaa.html,我的应用上下文是test,容器会将http://localhost/test去掉,剩下的/aaa.html部分拿来做servlet的映射匹配。

容器会首先查找完全匹配,如果找不到,再查找目录匹配,如果也找不到,就查找扩展名匹配。如果还没有找到一个servlet,器将尝试为请求的资源使用内容服务,如果应用定义了一个默认servlet,则容器会将请求丢给默认servlet。

如果一个请求匹配多个“目录匹配”,容器会选择最长的匹配。如:servletA的url-pattern为/test/*,而servletB的url-pattern为/test/a/*,此时访问http://localhost/test/a时,容器会选择路径最长的servlet来匹配,也就是这里的servletB。

分享到:
评论

相关推荐

    url-pattern的3种写法

    在Web应用开发中,`web.xml`配置文件扮演着极其重要的角色,其中`&lt;url-pattern&gt;`元素用于定义Servlet的映射规则,即URL模式。通过不同的URL模式,我们可以精确地控制Servlet如何被客户端请求所调用。本文将详细介绍`...

    javaee.jar,jsf-api.jar,jsf-impl.jar,jstl-1.2.jar

    这些标签可以用来处理常见任务,如条件语句、循环、国际化、URL操作等,从而减少在JSP页面中使用脚本语言(如Java)的量,提高代码的可读性和可维护性。 这四个JAR文件组合在一起,通常用于构建一个基于Java EE的...

    org.springframework.web.servlet-3.0.1.RELEASE-A.jar

    Error creating bean with name 'org.springframework.web.servlet.handler.SimpleUrlHandlerMapping#0' defined in ServletContext resource [/WEB-INF/springMVC-servlet.xml]: Initialization of bean failed;...

    servlet url-pattern

    在Web应用程序的部署描述符(web.xml)中,我们通过URL-Pattern来定义Servlet的访问路径,使得当用户通过特定URL发起请求时,服务器知道应该调用哪个Servlet来处理。 在`web.xml`文件中,URL-Pattern的配置方式通常...

    web.xml配置文件详解

    ### web.xml配置文件详解 #### 一、概述 `web.xml`是Java Web应用程序的核心配置文件之一,主要用于定义Web应用程序的结构与行为。它是Servlet容器(如Tomcat)读取Web应用程序配置信息的主要来源,因此深入理解其...

    Tomcat中web.xml文件的详细说明

    Tomcat 中 web.xml 文件的详细说明 Tomcat 中的 web.xml 文件是用于配置 Web 应用的核心文件,它定义了 Web 应用的基本信息、Filter、Servlet、Session 等信息。本文将详细介绍 web.xml 文件的结构和各个元素的作用...

    java web项目 web.xml配置详解

    在Java Web开发中,`web.xml`文件是应用的核心配置文件,它定义了Servlet、过滤器、监听器等组件,并负责映射它们的行为。本文将深入解析`web.xml`配置,帮助开发者理解其背后的原理和用途。 一、web.xml文件概述 `...

    Web.xml配置文件.pdf

    总结,`Web.xml`是Java Web应用的心脏,它定义了应用的架构、行为和运行规则。理解并熟练掌握其配置,是成为一名合格的Java Web开发者的重要步骤。通过合理的配置,我们可以实现灵活的请求处理、高效的数据过滤以及...

    web.xml配置详细说明.txt

    在J2EE应用程序开发中,`web.xml`文件被称为部署描述符,它是应用程序的核心配置文件。这个文件定义了Web应用的结构、行为以及服务器如何处理请求。本文将深入解析`web.xml`配置文件中的各个元素及其用法。 一、web...

    JAVA常用JAR包jdom.jar、jsf-api.jar、jsf-impl.jar、jstl-1.2.jar、saxpath.jar、xalan.jar、xerces.jar、xml-apis.jar包

    7. **xml-apis.jar**:XML APIs(APIs for XML)包含了处理XML所需的基本接口和类,如XMLReader和XMLWriter。它是许多XML解析器的基础,包括Xerces和SAX。 这些JAR包在开发Java Web应用程序时是至关重要的,它们...

    servlet的url-pattern匹配规则详细描述(小结)

    Servlet的URL-Pattern匹配规则是Web应用程序中Servlet和Filter配置的核心部分,它决定了Servlet或Filter如何响应特定的HTTP请求。以下是对这些匹配规则的详细解释: 1. **精确匹配** - 在`&lt;url-pattern&gt;`中指定的...

    struts.xml和applicationContext.xml、web.xml的配置

    在Java Web开发中,`struts.xml`, `applicationContext.xml` 和 `web.xml` 是三个至关重要的配置文件,它们各自负责不同的职责,并协同工作来构建一个完整的应用框架。以下是关于这三个配置文件的详细说明。 首先,...

    web.xml详解(web-app_2_3.dtd)

    在Java Web开发中,`web.xml`是部署描述文件的核心部分,它定义了Web应用程序的各种配置信息。本文将详细解析`web-app_2_3.dtd`中定义的主要元素及其作用,帮助开发者更好地理解和应用这些配置。 #### 1. `icon`...

    web.xml文件配置.doc

    本文将深入探讨web.xml文件中的加载顺序和常用元素,帮助开发者更好地理解和使用。 首先,加载顺序是web.xml配置的核心概念。加载顺序遵循以下规则:context-param -&gt; listener -&gt; filter -&gt; servlet。context-...

    为tomcat服务器配置https,tomcat需要设置的server.xml与web.xml配置

    &lt;url-pattern&gt;/*&lt;/url-pattern&gt; &lt;/web-resource-collection&gt; &lt;user-data-constraint&gt; &lt;transport-guarantee&gt;CONFIDENTIAL&lt;/transport-guarantee&gt; &lt;/user-data-constraint&gt; &lt;/security-constraint&gt; ``` 这将...

    web.xml配置文件详解[文].pdf

    `web.xml`是Java Web应用的核心配置文件,用于定义Servlet、过滤器、监听器以及其他相关组件的行为和配置。它是按照Servlet规范定义的标准格式编写,独立于任何特定的应用服务器,如Tomcat。以下是对`web.xml`文件中...

    web.xml详解

    `web.xml`是Java Web应用程序的核心配置文件,它遵循Java EE规范中的定义,用于定义Web应用的组件、监听器、过滤器以及它们之间的映射关系。在这个文件中,你可以配置Servlet、过滤器、会话超时、错误页面、欢迎文件...

    cors-filter-1.7.jar 和 java-property-utils-1.9.jar

    &lt;url-pattern&gt;/*&lt;/url-pattern&gt; &lt;/filter-mapping&gt; ``` 在这个例子中,`cors.filter`类是CORSFilter的全限定类名,`cors.allowGenericHttpRequests`参数允许非简单请求,`cors.allowOrigin`参数设置允许的源,星号...

    JSP Web.xml标准配置内容

    WEB.XML标准配置注解: &lt;!--Servlet的映射,用来说明客户端IE中输入什么样的地址字符串对应到哪个Servlet的别名--&gt; &lt;!--在该例中在IE地址栏中firstservlet字符串对应到别名为firstservlet的servlet--&gt; &lt;servlet-...

Global site tag (gtag.js) - Google Analytics