解决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>

问题解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值