解决SpringMVC传输json数据时的乱码
·
今天在练习过程中遇到SringMVC传输中文乱码问题,找了很久才解决。
- 数据库设置编码为UTF-8
- eclipse工作区编码也是UTF-8,控制台打印出中文正常
- jsp设置编码为UTF-8
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
js代码如下:
window.onload = function(){
$.get('list/house.html', function (response, status, xhr) {
alert(status);
console.log(response);
});
};
但是显示中文变成了?,后来找了很久才在这里找到解决办法。原文地址
具体是在springmvc.xml文件当中添加如下配置
<bean id="stringHttpMessageConverter"
class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>text/plain;charset=UTF-8</value>
<value>application/json;charset=UTF-8</value>
</list>
</property>
</bean>
<!-- 避免IE执行AJAX时,返回JSON出现下载文件 -->
<!-- Jackson 是Spring 自带的功能 -->
<bean id="mappingJackson2HttpMessageConverter"
class="org.springframework.http.converter.json.MappingJackson2HttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>application/json;charset=UTF-8</value>
<value>application/xml;charset=UTF-8</value>
<value>text/html;charset=UTF-8</value>
<value>text/plain;charset=UTF-8</value>
<value>text/xml;charset=UTF-8</value>
<value>text/javascript;charset=UTF-8</value>
</list>
</property>
</bean>
<mvc:annotation-driven>
<mvc:message-converters>
<ref bean="stringHttpMessageConverter" />
<ref bean="mappingJackson2HttpMessageConverter" />
</mvc:message-converters>
</mvc:annotation-driven>
问题解决。
新一代开源开发者平台 GitCode,通过集成代码托管服务、代码仓库以及可信赖的开源组件库,让开发者可以在云端进行代码托管和开发。旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。
更多推荐


所有评论(0)