spring+mybatis 通过@ResponseBody返回结果中文乱码的解决方法
发布时间:2020-12-14 20:19:26 所属栏目:Java 来源:网络整理
导读:问题发生: 通过@Responsebody返回 @ResponseBody@RequestMapping(value ="/selectByFormId",method = RequestMethod.GET)public MapString,Object getClassName(String formId){ ListString list =formInfoService.selectClassName(formId); MapString,Obje
问题发生: 通过@Responsebody返回 @ResponseBody @RequestMapping(value ="/selectByFormId",method = RequestMethod.GET) public Map<String,Object> getClassName(String formId){ List<String> list =formInfoService.selectClassName(formId); Map<String,Object> map = new HashMap<String,Object>(); map.put("data",list); map.put("status",true); return map; } 结果: {"data":["璧璁璐�","淇绫�","绠$绫�","�","ㄨ绫�","璧浜х�","璧璁$�","宸绠$绫�",<br>"璐�","浜轰ょ�","璐㈠$�","瀹㈡风�","瑙绫�","瀹㈣绫�","浜轰娲诲ㄧ�","浜轰琛跨�","绫�",<br>"璇锋绫�","绠$被","ヨ涓$�"],"status":true} 解决办法: 在spring-mvc.xml中配置 <!-- 解决ResponseBody 乱码问题StringHttpMessageConverter这个转换器转换时,父类AbstractHttpMessageConverter的supportedMediaTypes属性默认是iso-8895-1导致 --> <mvc:annotation-driven> <mvc:message-converters> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes" value="text/html;charset=utf-8"></property> </bean> </mvc:message-converters> </mvc:annotation-driven> 但是配置完后又有了新的问题 error:...cvc-complex-type.2.1: 元素 'mvc:annotation-driven' 必须不含字符或元素信息项 [子级],因为该类型的内容类型为空。 后来知道是 springMVC的XSD文件版本不对,换成springMVC 4.0的 XSD就可以了 <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd"> 然后就ok了 {"data":["资讯请购类","促销类","管理类","暂支类","储运类","资产类","资讯服务类","差旅管理类","采购类","人事考勤类"<br>,"财务类","客户类","视拓类","客诉类","人事活动类","人事行政类","公文类","请款类","销管类","营运业务类"],"status":true} StringHttpMessageConverter 这个方法 有很多转换作用,有时间可以多看看 以上这篇spring+mybatis 通过@ResponseBody返回结果中文乱码的解决方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程小技巧。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |