java - SpringMVC@ResponseBody中文乱码
PHP中文网
PHP中文网 2017-04-18 10:42:03
0
6
721
PHP中文网
PHP中文网

认证0级讲师

全部回覆(6)
小葫芦

xml檔加上這個就可以了

    <mvc:message-converters register-defaults="true">
        <bean class="org.springframework.http.converter.StringHttpMessageConverter">
            <property name="supportedMediaTypes" value="text/html;charset=UTF-8"></property>
        </bean>
    </mvc:message-converters>
</mvc:annotation-driven>
左手右手慢动作

不知道MediaType是啥,不過我一直是用produces = "application/json;charset=UTF-8"這個編碼,還是說前台的編碼不是utf-8

黄舟

如果伺服器是 Tomcat,則換到 8.0 以上版本。舊版缺省情況下並非 UTF-8 編碼。

左手右手慢动作

配置一個 spring 的編碼過濾器
隨手搜的一個,供參考
如果是新項目去看看 spring boot 吧,基本不用怎麼配置,像中文亂碼這些都默認配好了。

阿神

說一下亂碼問題 GET和POST
POST在web.xml檔中設定spring過濾器,使用servlet原始方法但是這樣JSON問題還是解決不瞭如圖可以解決
GET亂碼tomcat7及以下在web.xml中配置URIencoding=utf-8 或拿過來用ISO-8859-1手動解碼然後再用UTF-8編碼

Peter_Zhu

配置一個簡單的CharacterFilter可能解決不了, 如果使用的是Jackson2,試試下面這種方案

<mvc:annotation-driven>
        <mvc:message-converters>
            <bean class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
                <property name="supportedMediaTypes">
                    <util:list>
                        <value>application/json;charset=UTF-8</value>
                        <value>text/html;charset=UTF-8</value>
                    </util:list>
                </property>
            </bean>
        </mvc:message-converters>
    </mvc:annotation-driven>

jackson1同理,只是類換成了MappingJacksonHttpMessageConverter

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板