Filter入门介绍


一、Filter

1. 简介

Filter是对客户端访问资源的过滤,符合条件的放行,不符合条件的不放行,并且可以对目标资源访问前后进行逻辑处理的一个组件。

2. 过滤器的作用

​ Java过滤器是处于客户端与服务器资源文件之间的一道过滤网,在访问资源文件之前,通过一系列的过滤器可以对请求进行修改、判断等,把不符合规则的请求在中途拦截或修改;也可以对响应进行过滤,拦截或修改响应。例如:修改响应体或是请求体的字符集。


二、快速入门

步骤:

  • 使用Maven创建一个Web项目
  • 导入javax.servlet-api依赖
  • 编写一个过滤器继承Filter执行过滤操作
  • 编写一个Servlet继承HttpServlet执行业务处理操作
  • 在web.xml/注解中进行配置(配置servlet 和 filter )

CharsetFilter.java

public class CharsetFilter implements Filter {
   

    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
   
        System.out.println("这里做一些初始化操作");
    }

    @Override
    public void destroy() {
   
        System.out.println("这里做一些过滤器被销毁前的操作");
    }

    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
   
        System.out.println("这里执行过滤请求");
        //比如将请求的字符集改为utf-8
        request.setCharacterEncoding("utf-8");
        System.out.println(request.getCharacterEncoding());

        //这里也可以设置响应体的相关参数
        System.out.println(response.getCharacterEncoding());
        //改后放行
        chain.doFilter(request,response);

        System.out.println("这里过滤响应");
        System.out.println(response.getCharacterEncoding());

    }
}

ServiceServlet.java

 public class ServiceServlet extends HttpServlet {
   
    @O
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值