高洛峰2017-04-18 10:44:03
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>
ringa_lee2017-04-18 10:44:03
不知道MediaType是啥,不過我一直是用produces = "application/json;charset=UTF-8"這個編碼,還是說前台的編碼不是utf-8
ringa_lee2017-04-18 10:44:03
配置一個 spring 的編碼過濾器
隨手搜的一個,供參考
如果是新項目去看看 spring boot 吧,基本不用怎麼配置,像中文亂碼這些都默認配好了。
阿神2017-04-18 10:44:03
說一下亂碼問題 GET和POST
POST在web.xml檔中設定spring過濾器,使用servlet原始方法但是這樣JSON問題還是解決不瞭如圖可以解決
GET亂碼tomcat7及以下在web.xml中配置URIencoding=utf-8 或拿過來用ISO-8859-1手動解碼然後再用UTF-8編碼
天蓬老师2017-04-18 10:44:03
配置一個簡單的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