【发布时间】:2012-06-08 20:00:39
【问题描述】:
我知道我不能对过滤器映射的 url 模式使用正则表达式,但我想知道是否可以使用类似 /foo/.+/* 的东西来映射过滤器
【问题讨论】:
标签: servlets servlet-filters url-pattern
我知道我不能对过滤器映射的 url 模式使用正则表达式,但我想知道是否可以使用类似 /foo/.+/* 的东西来映射过滤器
【问题讨论】:
标签: servlets servlet-filters url-pattern
没有。至于通配符匹配,<url-pattern>只支持前缀(/folder/*)或后缀(*.extension)匹配。
如果您希望使用 Apache HTTPD 的mod_rewrite 尽可能地进行更细粒度的匹配,请改用Tuckey's UrlRewriteFilter 或OCPSoft Rewrite。它们通过 XML 配置支持mod_rewrite-like 表达式。
【讨论】:
没有。 Servlet 中的 URL 模式不支持正则表达式。它们只能是以下三种类型:
Exact Pattern 前,/folder/abc.html,/folder/abc
Directory Pattern 例如,/folder/abc/*
Extension Pattern 前,*.js,*.reports 等【讨论】: