zoukankan      html  css  js  c++  java
  • springmvc 发送ajax中文乱码的几种解决办法

    使用spingmvc,在JS里面通过ajax发送请求,并返回json格式的数据,从数据库拿出来是正确的中文格式,展示在页面上就是错误的??,研究了一下,有几种解决办法。 

      我使用的是sping-web-3.2.2,jar 

      方法一: 

      在@RequestMapping里面加入produces = "text/html;charset=UTF-8" 

    @RequestMapping(value = "/configrole", method = RequestMethod.GET, produces = "text/html;charset=UTF-8")  
    public @ResponseBody String configrole() {  
      ......  
    } 

    方法二: 

    因为在StringHttpMessageConverter里面默认设置了字符集是ISO-8859-1 

    所以拿到源代码,修改成UTF-8并打包到spring-web-3.2.2.jar 

    public class StringHttpMessageConverter extends AbstractHttpMessageConverter<String>  
    {  
      public static final Charset DEFAULT_CHARSET = Charset.forName("UTF-8");  
      ..........  
    }  

    方法三: 

    修改org.springframework.http.MediaType它的构造方法的参数,并在applicationContext-mvc.xml 加入配置 

    public MediaType(String type, String subtype, Charset charset) {  
        super(type, subtype, charset);  
    }  
    <bean id="stringHttpMessageConverter"  
        class="org.springframework.http.converter.StringHttpMessageConverter">  
        <property name="supportedMediaTypes">  
            <list>  
                <bean class="org.springframework.http.MediaType">  
                    <constructor-arg value="text" />  
                    <constructor-arg value="plain" />  
                    <constructor-arg value="UTF-8" />  
                </bean>  
            </list>  
        </property>  
    </bean>  

    方法四: 

      直接将org.springframework.http.converter.StringHttpMessageConverter 里面的属性defaultCharset设置成utf-8 

    <bean id="stringHttpMessageConverter" class="org.springframework.http.converter.StringHttpMessageConverter">  
         <property name="defaultCharset" value="UTF-8"/>  
    </bean>  
  • 相关阅读:
    Python排列函数:sort、sorted
    Python高阶函数:map、reduece、filter
    Python:容器、迭代对象、迭代器、生成器及yield关键字
    JPA-映射-(@OneToOne)双向一对一
    JPA-映射-(@OneToMany、@ManyToOne)双向一对多
    JPA-映射-(@OneToMany)单向一对多
    JPA-映射-(@ManyToOne)单向多对一
    JPA-EntityManager.merge()
    JPA-API
    leetcode 2.Add Two Numbers
  • 原文地址:https://www.cnblogs.com/mabiao008/p/6185991.html
Copyright © 2011-2022 走看看