当前位置:首页 > 开发 > 系统架构 > 架构 > 正文

SpringMVC-ajax返回值乱码解决方案

发表于: 2014-11-08   作者:dashuaifu   来源:转载   浏览:
摘要:   SpringMVC-ajax返回值乱码解决方案   一:(自己总结,测试过可行) ajax返回如果含有中文汉字,则使用:(如下例:) @RequestMapping(value="/xxx.do")       public @ResponseBody void getPunishReasonB

 

SpringMVC-ajax返回值乱码解决方案

 

一:(自己总结,测试过可行)

ajax返回如果含有中文汉字,则使用:(如下例:)

@RequestMapping(value="/xxx.do")  
    public @ResponseBody void getPunishReasonById(HttpServletRequest request,HttpServletResponse response) throws Exception{
        String str = “中文”;
        response.getWriter().write(str);
        response.getWriter().flush();
        response.getWriter().close();
//        return str;
    }

 

如果直接使用返回值为String并return str  则中文乱码!!!

 

jsp_js(ajax)

ajax可以直接接收返回值!

如:(如下例:)

$.ajax({
            type : "POST",
            url : "xxx.do",
            success : function(data){
                alert(data);//打印中文无乱码!!!——wds
            }
    });

//欢迎交流互动,记得赞一个!

 

 

--IT愤青一枚

 

 

 

 

 

 

 

 

下面是别人总结的ajax中文乱码问题:

 

  1. /** 
  2.  * 使用ajax检查用户是否存在 
  3.  */  
  4. public void checkUser(){  
  5.   
  6.     try{  
  7.         System.out.println("userName="+user.getUserName());  
  8.         HttpServletResponse response=ServletActionContext.getResponse();  
  9.         response.setContentType("text/xml;charset=utf-8");  
  10.         response.setHeader("Cache-Control""no-cache");  
  11.        
  12.         PrintWriter pw=response.getWriter(); // 输出中文,这一句一定要放到response.setContentType("text/xml;charset=utf- 8"),  response.setHeader("Cache-Control", "no-cache")后面,否则中文返回到页面是乱码  
  13.         
  14.         if(existUser.contains(user.getUserName()))  
  15.         {  
  16.             pw.print("存在");  
  17.         }else{  
  18.             pw.print("不存在");  
  19.         }  
  20.        
  21.         pw.close();  
  22.     }catch(IOException e){  
  23.         e.printStackTrace();  
  24.     }  

SpringMVC-ajax返回值乱码解决方案

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
(1)java中处理中文字符正常,在cmd client中显示乱码是字符集的问题. (2)字段长度设置够长,但插入中
由于一真开发使用Oracle和SqlServer ,很少使用MySql,所以一直对MySql不是很了解,但却知道MySQL的乱
数据库层面的乱码 数据库的默认编码方式为latina 而我们集成开发时通过JDBC或者Hibernate写入数据时
右键选择Options... 左栏选项选择Text,右栏Character set 选择GBK,Locale选择zh_CN 选择OK,乱码成
原帖:http://www.java2000.net/p14760 出现乱码的运行效果 原始程序如下 package net.java2000.jfr
一、常识了解 1.GBK包含GB2312,即如果通过GB2312编码后可以通过GBK解码,反之可能不成立; 2.java.n
1、MySql数据库安装时默认编码是Latin1,要支持中午需要在安装时设置数据库编码为gbk或utf-8。 2、
版权声明:转载时请务必保留以下作者信息和链接 作者:陈维(chenweionline@hotmail.com)作者的网
版权声明:转载时请务必保留以下作者信息和链接 作者:陈维(chenweionline@hotmail.com)作者的网
版权声明:转载时请务必保留以下作者信息和链接 作者:陈维(chenweionline@hotmail.com)作者的网
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号