过滤器Filter

本文深入探讨了Servlet Filter的开发过程,包括实现Filter接口的init、doFilter和destroy方法,以及如何通过注解@WebFilter或XML配置Filter。内容还涉及到Filter的配置,如使用通配符匹配请求,并讲解了过滤器链的执行顺序及其配置影响。示例代码展示了@WebFilter注解的用法,以及Filter如何进行请求拦截和放行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

详细内容:过滤器

  1. Filter也属于Servlet规范
  2. Filter开发步骤:新建类实现Filter接口,然后实现其中的三个方法:initdoFilterdestroy
    配置Filter,可以用注解@WebFilter,也可以使用xml文件 <filter> ``<filter-mapping>
  3. 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. 过滤器链
    1)执行的顺序依次是: A B C demo03 C2 B2 A2
    2)如果采取的是注解的方式进行配置,那么过滤器链的拦截顺序是按照全类名的先后顺序排序的
    3)如果采取的是xml的方式进行配置,那么按照配置的先后顺序进行排序
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值