如果url模式匹配多个servlet怎么办?

Xyz*_*Xyz 11 java web.xml servlets java-ee

<servlet-mapping>
  <servlet-name> s1</servlet-name>
  <url-pattern> /abc </url-pattern>
</servlet-mapping>

<servlet-mapping>
  <servlet-name> s2</servlet-name>
  <url-pattern> /abc </url-pattern>
</servlet-mapping>

<servlet-mapping>
  <servlet-name> s3</servlet-name>
  <url-pattern> /* </url-pattern>
</servlet-mapping>
Run Code Online (Sandbox Code Playgroud)

如果请求/ abc到来,将调用哪个servlet?为什么?

Boz*_*zho 16

检查一下.简而言之:

  • 如果映射具有完全相同的模式,则无法保证将调用哪个servlet.所以避免这样做.
  • 如果图案重叠,则挑选最具体的图案.(/abc比具体而言/*)