我正在实施如下过滤器:
@Provider
public class MyFilter implements ContainerRequestFilter, ContainerResponseFilter {
@Override
public void filter(ContainerRequestContext requestContext) throws IOException {
System.out.print("request");
}
@Override
public void filter(ContainerRequestContext requestContext, ContainerResponseContext responseContext) throws IOException {
System.out.print("response");
}
}
如何使过滤器仅适用于遵循特定模式(regexp)的URL?
答案 0 :(得分:1)
过滤器中不允许使用正则表达式 - 某些通配符
<filter>
<filter-name>MyFilter</filter-name>
<filter-class>...</filter-class>
</filter>
<filter-mapping>
<filter-name> MyFilter</filter-name>
<url-pattern>/Employee/*</url-pattern>
</filter-mapping>
您可以使用过滤器缩小URL,然后在过滤器Java代码中,您可以使用RegEx进行条件处理