zoukankan      html  css  js  c++  java
  • 数据传递-------ajaxJson------spring3mvc中使用ajax传json中文乱码解决

    参考来源:http://blog.csdn.net/dangerous_fire/article/details/25904225

    第一种解决方法,适用所有情况

    因为在controller中返回json用了@ResponseBody,而spring源码中@ResponseBody 的实现类发现其默认的编码是 iso-8859-1,而项目用的编码为utf-8,所以传中文会出现乱码,解决办法是不用注解,直接用response,转换编码。

    [java] view plain copy
     
    1. @RequestMapping("/modifyconfiginput")  
    2. @ResponseBody  
    3. public String modifyinput( @RequestParam(value="id") String id,   
    4.                            @RequestParam(value="timestamp") String timestamp,   
    5.                            HttpServletResponse response ) throws Exception {   
    6.     ImmediateConfig ic = this.immediatePictureService.findImmediateConfig(id);   
    7.     String json = "["+"{name:'"+ic.getName()+"',classId:'"+ic.getProductClass().getClassId()+"',pyFile:'"+ic.getPyFile()+"'}]";   
    8.     System.out.println("json:"+json);   
    9.     //return json;   
    10.     // 设置response的ContentType解决中文乱码   
    11.     response.setContentType("text/html;charset=UTF-8");   
    12.     response.getWriter().print(json);   
    13.     return null;   
    14. }  

    第二种解决方法,可用于新版本的spring

    [java] view plain copy
     
    1. @RequestMapping(value="/ajaxCounterList", produces = "application/json; charset=utf-8")  

    注意:在IE浏览器中必须声明返回的类型,如下

    @RequestMapping(value="/upload/upload",produces="text/html;charset=UTF-8")

    或者用第一种方法,但也要声明为 text/html 类型,否则IE无法识别,会报错误

    [plain] view plain copy
     
      1. Servlet.service() for servlet springMVC threw exception  
      2. java.lang.IllegalStateException: <span style="color:#FF0000;">Current request is not of type</span> [org.springframework.web.multipart.MultipartHttpServletRequest]: org.apache.catalina.connector.RequestFacade@58fbd53e  
  • 相关阅读:
    LabVIEW入门第三天(软件及驱动包下载)
    poj1732
    poj1722
    poj1821
    poj1770
    poj1949
    poj1726
    poj1699
    poj1682
    poj1853
  • 原文地址:https://www.cnblogs.com/1020182600HENG/p/6912610.html
Copyright © 2011-2022 走看看