SpringMVC的@ResponseBody注解能够将请求方法返回的对象直接转换成JSON对象,可是当返回值是String的时候,中文会乱码,缘由是由于其中字符串转换和对象转换用的是两个转换器,而String的转换器中固定了转换编码为"ISO-8859-1",网上也不少种解决方法,有经过配置Bean编码的,也有本身重写转换器的,我这里屡次尝试未果,只能本身解决。html
第一种:在@RequestMapping中添加produces="text/html;charset=UTF-8spring
第二种:在MVC 配置中加入,spring版本必需为3.1或以上版本才能够下配置mvc
<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>app
以上为本身总结。编码
参考博客为:spa
SpringMVC3的ResponseBody返回字符串(JSON)乱码问题解决.net