`
nelson_tu
  • 浏览: 37449 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

解决StringHttpMessageConverter显示中文乱码

阅读更多

原因分析:
    StringHttpMessageConverter内部使用ISO-8859-1字符集,而不是标准的UTF-8

解决方法:
    通过查看Spring的源码,发现可以通过设置属性supportedMediaTypes(位于父抽象类AbstractHttpMessageConverter)来设置字符集为UTF-8

配置内容:
    <bean id="stringHttpMessageConverter"
        class="org.springframework.http.converter.StringHttpMessageConverter">
        <property name="supportedMediaTypes">
            <list>
                <bean class="org.springframework.http.MediaType">
                    <constructor-arg value="text" />
                    <constructor-arg value="plain" />
                    <constructor-arg value="UTF-8" />
                </bean>
            </list>
        </property>
    </bean>

分享到:
评论
2 楼 sampou 2016-08-07  
不行啊,还是乱码
1 楼 nelson_tu 2012-06-19  
更简单的配置:
<bean id="stringHttpMessageConverter"
class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>text/plain;charset=UTF-8</value>
</list>
</property>
</bean>

相关推荐

Global site tag (gtag.js) - Google Analytics