web.xml: 如何将 domain/xx/* 映射到 servlet?

web.xml: how to map domain/xx/* to a servlet?

我有这些 URL

abc.com/aa/url1
abc.com/ab/url2
abc.com/ac/url3
etc.

如何设置 web.xml 以将此模式映射到 servlet?

<servlet>
<servlet-name>NAME</servlet-name>
<servlet-class>MyClass</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>NAME</servlet-name>
<url-pattern>/xx/*</url-pattern>
</servlet-mapping>

其中 xx 是两个字母的字符串。我应该在 xx 的位置放什么,以便上面的所有链接都转到 MyClass?

您可以拥有多个 url-模式条目:

<servlet>
    <servlet-name>NAME</servlet-name>
    <servlet-class>MyClass</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>NAME</servlet-name>
    <url-pattern>/aa/*</url-pattern>
    <url-pattern>/ab/*</url-pattern>
    <url-pattern>/ac/*</url-pattern>
</servlet-mapping>

不幸的是,servlet 映射不能采用正则表达式,因此您不能为映射做 /a*/* 的变体。