Filter

1 Filter


1.1 什么是过滤器

         拦截用户请求,判断是否放行或对请求体或响应体做一些操作,要么直接返回 response,或交给下一个 Filter 或 Servlet 处理。
在这里插入图片描述




1.2 实现


1.2.1 FirstFilter

public class FirstFilter implements Filter {

    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
        System.out.println("InitFilter");
    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        System.out.println("begin Filter");

        // 调用下一个过滤器或 Servlet.
        filterChain.doFilter(servletRequest, servletResponse);

        System.out.println("end Filter");
    }

    @Override
    public void destroy() {
        System.out.println("Destory Filter");
    }
}




1.2.2 配置

<web-app>
  <filter>
    <filter-name>firstFilter</filter-name>
    <filter-class>com.wangnan.filter.FirstFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>firstFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>




1.3 先后顺序

  • web.xml当中的配置的顺序有关,在前面配置的先执行。




1.4 使用场景

  • 从session当中判断用户是否登录。
  • 设置统一的编码方式。
  • 加密和解密的操作。
  • 非法文字筛选。
  • 下载资源的限制。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值