SpringMVC 返回中文字符串時亂碼

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

SpringMVC3的ResponseBody返回字符串亂碼問題解決

相關文章
相關標籤/搜索