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

时间:2012-06-22 13:33:22

标签: java java-ee servlets servlet-filters

我想知道,在一个Filter doFilter方法中,只要我的web.xml中有一个映射的servlet的请求。无论如何都要这样做吗?

提前致谢,

费尔南多

1 个答案:

答案 0 :(得分:2)

无法做到。更好地直接在这些servlet上映射过滤器。这可以使用<servlet-name>代替<url-pattern>来完成。它必须与<servlet-name>条目中定义的<servlet>完全相同。如果需要,您可以指定多个。

<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"})