JSP乱码解决方案

来源:互联网 发布:c语言应用范围 编辑:程序博客网 时间:2024/05/16 11:13
  一般来说,我们现在编程都使用的MVC三层架构体系,也就是说接收和处理数据都是在Moudel(Servler)中完成的,所以要解决乱码问题,也就要在这里进行
    对于POST请求,一般可以用简单的  request.setCharacterEncoding("GBK"); 来实现
   
    也可以用 response.setContentType("text/html;charset=GBK");
 
                 response.setCharacterEncoding("GBK"); 这两种方法。
 
    但要解决GET方法的乱码处理 需要一个方法来解决,首先在一个类中定义一个静态方法如下:
 
        //对乱码的处理方法
   public static String font(String str)
   {
    try {
        return new String(str.getBytes("ISO-8859-1"), "GB2312");
    } catch (UnsupportedEncodingException ex) {
        return null;
    }
   }
 
然后在Servler中接收字符时调用方法处理:
      String name = request.getParameter("usname");  //处理前
      String name = NewsDao.font(request.getParameter("usname")); //用定义的方法处理
  NewsDao是我方法所在的类
 
注意:这也可以说是乱码的终极解决方案,如果接收的字符不是汉字就不要用! 负责可能适得其反
原创粉丝点击