springMVC 返回中文字符串时乱码

来源:互联网 发布:防范电信网络诈骗 编辑:程序博客网 时间:2024/05/18 12:04

SpringMVC的@ResponseBody注解可以将请求方法返回的对象直接转换成JSON对象,但是当返回值是String的时候,中文会乱码,原因是因为其中字符串转换和对象转换用的是两个转换器,而String的转换器中固定了转换编码为"ISO-8859-1",网上也很多种解决方法,有通过配置Bean编码的,也有自己重写转换器的,我这里多次尝试未果,只能自己解决。


第一种:在@RequestMapping中添加produces="text/html;charset=UTF-8


第二种:在MVC 配置中加入,spring版本必需为3.1或以上版本才可以下配置

<mvc:annotation-driven>
        <mvc:message-converters register-defaults="true">
            <bean class="org.springframework.http.converter.StringHttpMessageConverter">
              <constructor-arg value="UTF-8" />
            </bean>
        </mvc:message-converters>
    </mvc:annotation-driven>


以上为自己总结。

参考博客为:

SpringMVC3的ResponseBody返回字符串(JSON)乱码问题解决

SpringMVC3的ResponseBody返回字符串乱码问题解决

0 0
原创粉丝点击