出现的可能原因:1.页面的显示字符集不正确,2服务器传递的数据乱码3,服务器查询出的数据乱码
1.对其报文查看,返回的response 中的字符集信息是utf-8,页面字符集<meta charset="utf-8" />表名服务器到客户端数据是正确的
2.数据库中的数据不是乱码的,取数据的url中也定义了字符集,取数据是正确的。?characterEncoding=UTF-8
3.查找@ResponseBody默认返回的字符集是ISO-8859-1
解决办法:
1.局部:在requestMapping中添加
produces="text/html;charset=UTF-8"
2.全局
<mvc:annotation-driven >
<!-- 消息转换器 -->
<mvc:message-converters register-defaults="true">
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes" value="text/html;charset=UTF-8"/>
</bean>
</mvc:message-converters>
</mvc:annotation-driven>