1. 程式人生 > >Springmvc返回JSON格式到頁面中文亂碼問題

Springmvc返回JSON格式到頁面中文亂碼問題

spa com prope edm rop prop tps 編碼 我們

我是通過@ResponseBody註解的方式實現json格式傳到頁面的方法。首先查看源代碼如下圖,springmvc的默認編碼是“ISO-8859-1”;

而我們通常編碼都是使用UTF-8,

技術分享圖片

所以我們需要在springmvc的註解配置中處理json格式的時候應該修改一下默認的編碼格式。

springmvc配置文件中代碼如下:

<mvc:annotation-driven>
<mvc:message-converters register-defaults="true">
<bean class="org.springframework.http.converter.StringHttpMessageConverter">

<property name="supportedMediaTypes">
<list>
<value>text/html;charset=UTF-8</value>
<value>application/json;charset=UTF-8</value>
</list>
</property>
</bean>
</mvc:message-converters>

</mvc:annotation-driven>
我們在使用基礎的Servlet解決的時候是給HttpServletResponse類對象的追加一個application/json;charset=UTF-8。
在這裏只配置一個application/json;charset=UTF-8是不行的。
必須同時配置
  <value>text/html;charset=UTF-8</value>
  <value>application/json;charset=UTF-8</value>
至於解釋,大佬這樣說的:
SpringMVC 是按照message-converters 裏面配置的處理數據格式的,配置了2個消息轉換器 Jackson 和 字符串,

這2個消息轉換器都是Spring自帶的。

Springmvc返回JSON格式到頁面中文亂碼問題