如何在过滤器内部知道何时请求是映射的 servlet



我想知道,在Filter doFilter方法中,每当请求是针对我的网络中映射的servlet时.xml。有什么办法吗?

提前感谢,

费尔南多

这是不可能的。最好直接在这些 servlet 上映射过滤器。这可以通过使用 <servlet-name> 而不是 <url-pattern> 来完成。它必须正是<servlet>条目中定义的<servlet-name>。如果需要,可以指定多个。

<filter-mapping>
    <filter-name>myFilter</filter-name>
    <servlet-name>myOneServlet</servlet-name>
    <servlet-name>myOtherServlet</servlet-name>
    <servlet-name>myLastServlet</servlet-name>
</filter-mapping>

或者当你已经在Java EE 6/Servlet 3.0上,因此很可能在类上使用@WebFilter时。

@WebFilter(servletNames={"myOneServlet", "myOtherServlet", "myLastServlet"})

最新更新