zoukankan      html  css  js  c++  java
  • 使用filter统一设置编码

    1.写一个类EncodingFilter.java,实现javax.servlet.Filter(文件命名做到见名知意)

    package com.filter;
    
    import java.io.IOException;
    
    import javax.servlet.Filter;
    import javax.servlet.FilterChain;
    import javax.servlet.FilterConfig;
    import javax.servlet.ServletException;
    import javax.servlet.ServletRequest;
    import javax.servlet.ServletResponse;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    public class EncodingFilter implements Filter {
    
        private String encoding = null;
        
        /**
         * 初始化方法,从web.xml中获取配置的初始化参数
         */
        @Override
        public void init(FilterConfig filterConfig) throws ServletException {
            this.encoding = filterConfig.getInitParameter("encode");
            
        }
    
        /**
         * 设置编码
         */
        @Override
        public void doFilter(ServletRequest request, ServletResponse response,
                FilterChain chain) throws IOException, ServletException {
            HttpServletRequest httpRequest = (HttpServletRequest)request;
            HttpServletResponse httpResponse = (HttpServletResponse)response;
            
            httpRequest.setCharacterEncoding(encoding);
            httpResponse.setCharacterEncoding(encoding);
            
            //调用doFIlter方法,如果还有别的过滤器会自动向下调用
            chain.doFilter(httpRequest, httpResponse);
            
        }
    
        @Override
        public void destroy() {
            
        }
    
    
    }

    2.配置web.xml,使自定义的过滤器生效(如果有其他的过滤器,请放到最前面)

     <filter>
         <filter-name>encode</filter-name>
         <filter-class>com.filter.EncodingFilter</filter-class>
         <init-param>
             <param-name>encode</param-name>
             <param-value>UTF-8</param-value>
         </init-param>
     </filter>
     <filter-mapping>
         <filter-name>encode</filter-name>
         <url-pattern>/*</url-pattern>
     </filter-mapping>
  • 相关阅读:
    ICPC 2017 Japan Domestic --Making Lunch Boxes(位运算枚举)
    ssr安装
    大作业信息汇总
    知识点1-3:MVC设计模式
    演练2-2:Guestbook示例应用程序
    知识点2-2:认识默认项目模板
    演练2-1:创建MVC默认项目
    知识点2-1:设置开发环境
    知识点1-4:ASP.NET MVC的好处
    知识点1-1:什么是ASP.NET MVC
  • 原文地址:https://www.cnblogs.com/djoker/p/6266676.html
Copyright © 2011-2022 走看看