1. Java servlet技术中有关过滤器的API包括了javax.servlet包中的Filter/FilterChain/FilterConfig三个接口java
2. 全部的servlet过滤器类都必需要实现javax.servlet.Filter接口web
public interface Filter { default void init(FilterConfig filterConfig) throws ServletException { } void doFilter(ServletRequest var1, ServletResponse var2, FilterChain var3) throws IOException, ServletException; default void destroy() { } }
3. 在web.xml中配置好Filter以后(也就是告知Tomcat容器)。当有客户请求过滤器关联的URL时,servlet容器将先调用过滤器的doFilter方法。spring
4. FilterChain用于抛向下一个过滤器的参数。造成一个过滤器链(多个过滤器链接在一块儿)。请求必须经过这么多的过滤器链以后才能获得后台处理响应!app
5.web.xml中关于filter的配置:url
先定义一个filter(名字)和实现类:本身实现的Filter类!!!定义filter必须放在关联URL配置前面! <filter> <filter-name>springSecurityFilterChain</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> </filter> //关联指定的URL请求!这里/*表示拦截全部的请求!!! <filter-mapping> <filter-name>springSecurityFilterChain</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
6. code