解决中文乱码

package com.hygj.servlet;

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

public class FilterServlet extends HttpServlet implements Filter {
  private FilterConfig filterConfig;
  //Handle the passed-in FilterConfig
  public void init(FilterConfig filterConfig) {
    this.filterConfig = filterConfig;
  }
  //Process the request/response pair
  public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) {
    try {
      //一次性解决所有叶面的中文问题
      //System.out.println("filter");
      //request.setCharacterEncoding("gb2312");
      filterChain.doFilter(request, response);
    }
    catch(ServletException sx) {
      filterConfig.getServletContext().log(sx.getMessage());
    }
    catch(IOException iox) {
      filterConfig.getServletContext().log(iox.getMessage());
    }
  }
  //Clean up resources
  public void destroy() {
  }
}

---------------------

package com.hygj.servlet;

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

public class LoginServlet extends HttpServlet {
  private static final String CONTENT_TYPE = "text/html;charset=gb2312";
  //Initialize global variables
  public void init() throws ServletException {
  }
  //Process the HTTP Get request
  public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    //解决出的乱码
    response.setContentType(CONTENT_TYPE);
    PrintWriter out = response.getWriter();
    //解决请求中的乱码
    //request.setCharacterEncoding("GB2312");
    String user=request.getParameter("user");
    String pwd=request.getParameter("pwd");
    //通过字符串的重新格式化的方式解决乱麻
    user=new String(user.getBytes("ISO-8859-1"),"GB2312");
    pwd=new String(pwd.getBytes("ISO-8859-1"),"GB2312");


    System.out.println(user);
    System.out.println(pwd);
    out.println("<html>");
    out.println("<head><title>LoginServlet</title></head>");
    out.println("<body bgcolor=/"#ffffff/">");
    out.println("<p>The servlet has received a " + request.getMethod() + ". This is the reply.</p>");
    out.print("这是我的servlet");
    out.println("</body></html>");
  }
  //Process the HTTP Post request
  public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    doGet(request, response);
  }
  //Clean up resources
  public void destroy() {
  }
}

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值