java web中filter过滤器的使用

Posted 樱花飘落の季節

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java web中filter过滤器的使用相关的知识,希望对你有一定的参考价值。

编写filter过滤器有两种方法,一种是使用注解配置,另一种是使用web.xml配置,此处使用web.xml配置来实现过滤器

(1)使用web.xml配置过程

  <filter>
    <filter-name>setCharacterFilter</filter-name>
    <filter-class>com.qst.setCharacterEncodingFilter</filter-class>
  </filter>
  <filter-mapping>
    <filter-name>setCharacterFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

(2)过滤器主体demo

public class setCharacterEncodingFilter implements Filter{
    
    @Override
    public void destroy() {
        // TODO Auto-generated method stub
        //Filter.super.destroy();
    }

    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
            throws IOException, ServletException {
        // TODO Auto-generated method stub
        request.setCharacterEncoding("utf-8");
        response.setContentType("text/html;charset=utf-8");
        chain.doFilter(request, response);
    }
    
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
        // TODO Auto-generated method stub
        //Filter.super.init(filterConfig);
    }

}

通过过滤器,我们可以实现统一的对请求和响应中文乱码问题的配置,不用在每次请求和响应的demo中都去设置utf-8的编码

以上是关于java web中filter过滤器的使用的主要内容,如果未能解决你的问题,请参考以下文章

Java三大器之过滤器(Filter)的工作原理和代码演示

Java三大器之过滤器(Filter)的工作原理和代码演示

java web项目中,如何通过filter获取当前action的名字?请给出具体的代码

XSS过滤JAVA过滤器filter 防止常见SQL注入

JAVA WEB 过滤器(Filter)中向容器 Spring 注入 bean

通过Java Web Filter实现一个最简单的UrlRewrite过滤器