charsetencodingfilter.java~33~

来自「一个基于JAVA的BS结构的宠物诊所管理系统.是当年在学校时写的,大家指点一下.」· JAVA~33~ 代码 · 共 47 行

JAVA~33~
47
字号
package gxaccp.t07.guoneng_wei.support;

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class CharsetEncodingFilter
    extends HttpServlet implements Filter {
  private static final String CONTENT_TYPE = "text/html; charset=GBK";
  private FilterConfig filterConfig;
  //Handle the passed-in FilterConfig
  public void init(FilterConfig filterConfig) throws ServletException {
    this.filterConfig = filterConfig;
    System.out.println("------------------(测试)CharsetEncodingFilter过滤器初始化完成");
  }

  //Process the request/response pair
  public void doFilter(ServletRequest request, ServletResponse response,
                       FilterChain filterChain) {
    try {
//      response.setContentType(this.CONTENT_TYPE);

        ServletContext sc=this.getServletContext();
        if(sc!=null&&sc.getAttribute("OnLineNumber")==null){

          System.out.println("-----------------就执行一次----------------");
        }

      request.setCharacterEncoding("GBK");
      response.setCharacterEncoding("gb2312");
      filterChain.doFilter(request, response);

    }
    catch (ServletException sx) {
      filterConfig.getServletContext().log(sx.getMessage());
    }
    catch (IOException iox) {
      filterConfig.getServletContext().log(iox.getMessage());
    }
     System.out.println("###########走过CharsetEncodingFilter############");
  }

  //Clean up resources
  public void destroy() {
  }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?