<servlet-mapping>元素及其子元素

发布时间:2013-02-01 03:01:38
       <servlet-mapping>元素在Servlet和URL样式之间定义了一个映射。它包含了两个子元素<servlet-name>和
 
<url-pattern>。<servlet-name>元素给出的Servlet名字必须是在<servlet>元素中声明过的Servlet的名字。<url-pattern>元素指定对应于Servlet的URL路径,该路径是相对于web应用程序上下文根的路径,例如:
 
        <servlet-mapping>
 
              <servlet-name>HelloWorldServlet</servlet-name>
 
              <url-pattern>/helloworld</url-pattern>
 
        </servlet-mapping>
 
               注意:Servlet2.5规范允许<url-pattern>子元素在<servlet-mapping>父元素中出现多次,也就是说允许一
 
                         个Servlet对应几个不同的URL,这在以前的Servlet规范中是不允许的
 
  1.以/开始并以/*结束的字符串用来映射路径,例如:
 
           <url-pattern>/admin/*</url-pattern>
 
            如果没有精确匹配,那么对/admin/路径下的资源的所有请求将由映射了上述URL样式的Servle来处理
 
  2.以*.为前缀的字符串用来映射扩展名,例如:
 
            <url-pattern>*.do</url-pattern>
 
             如果没有精确匹配和路径匹配,那么对具有.do扩展名的资源的请求将由映射了上述URL样式的Servlet处理
 
 3.以一个单独的/指示这个web应用程序默认的Servlet,例如:
 
             <url-pattern>/</url-pattern>
 
             如果对于某个请求,没有找到匹配的Servlet,那么将使用web应用程序的默认Servlet来处理
 
4.精确匹配,例如: 
 
             <url-pattern>/login</url-pattern>