- Filter也属于Servlet规范
- Filter开发步骤:新建类实现Filter接口,然后实现其中的三个方法:
init
、doFilter
、destroy
配置Filter,可以用注解@WebFilter
,也可以使用xml文件 <filter> ``<filter-mapping>
- Filter在配置时,和servlet一样,也可以配置通配符,例如
@WebFilter("*.do")
表示拦截所有以.do
结尾的请求
@WebFilter("/demo01.do")
public class Demo01Filter implements Filter {
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
System.out.println("HelloA");
filterChain.doFilter(servletRequest, servletResponse);
System.out.println("HelloA2");
}
}
- 过滤器链
1)执行的顺序依次是: A B C demo03 C2 B2 A2
2)如果采取的是注解的方式进行配置,那么过滤器链的拦截顺序是按照全类名的先后顺序排序的
3)如果采取的是xml的方式进行配置,那么按照配置的先后顺序进行排序
