有两个servlet:A,B
映射到:/*
B映射到:/sub_dir/*
如果网址在/sub_dir/*
,则由B处理,否则由A处理。
答案 0 :(得分:2)
您可以帮助您理解url-pattern
请求可以匹配给定上下文中的多个servlet映射。 servlet容器使用简单的匹配过程来确定最佳匹配。
首先,容器优先于通配符路径匹配精确路径匹配。
其次,容器更喜欢匹配最长模式。
第三,容器首选路径匹配文件类型匹配。
最后,模式<url-pattern>/</url-pattern>
始终匹配任何其他模式不匹配的请求。
请查看我的另一篇文章How does a servlets filter identify next destination is another filter or a servlet/jsp?以获取详细说明。
我可以使用servlet在Web容器中执行此复杂的url映射吗?
是的,你可以通过记住规则来创建一个复杂的网址映射。
在您的情况下,根据规则,大多数特定或最长的网址格式/sub_dir/*
优先于/*
。