spring+mybatis 通過@ResponseBody返回結(jié)果中文亂碼的解決方法
問題發(fā)生:
通過@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;
}
結(jié)果:
{"data":["璧勮璇瘋喘綾�","淇?jī)閿€綾�","綆$悊綾�","鏆傛敮綾�","鍌ㄨ繍綾�","璧勪駭綾�","璧勮鏈嶅姟綾�","宸梾綆$悊綾�",<br>"閲囪喘綾�","浜轟簨鑰冨嫟綾�","璐㈠姟綾�","瀹㈡埛綾�","瑙嗘嫇綾�","瀹㈣瘔綾�","浜轟簨媧誨姩綾�","浜轟簨琛屾斂綾�","鍏枃綾�",<br>"璇鋒綾�","閿€綆$被","钀ヨ繍涓氬姟綾�"],"status":true}
解決辦法:
在spring-mvc.xml中配置
<!-- 解決ResponseBody 亂碼問題StringHttpMessageConverter這個(gè)轉(zhuǎn)換器轉(zhuǎn)換時(shí),父類AbstractHttpMessageConverter的supportedMediaTypes屬性默認(rèn)是iso-8895-1導(dǎo)致 -->
<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' 必須不含字符或元素信息項(xiàng) [子級(jí)], 因?yàn)樵擃愋偷膬?nèi)容類型為空。
后來知道是 springMVC的XSD文件版本不對(duì),換成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":["資訊請(qǐng)購(gòu)類","促銷類","管理類","暫支類","儲(chǔ)運(yùn)類","資產(chǎn)類","資訊服務(wù)類","差旅管理類","采購(gòu)類","人事考勤類"<br>,"財(cái)務(wù)類","客戶類","視拓類","客訴類","人事活動(dòng)類","人事行政類","公文類","請(qǐng)款類","銷管類","營(yíng)運(yùn)業(yè)務(wù)類"],"status":true}
StringHttpMessageConverter 這個(gè)方法 有很多轉(zhuǎn)換作用,有時(shí)間可以多看看
以上這篇spring+mybatis 通過@ResponseBody返回結(jié)果中文亂碼的解決方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- 詳解SpringBoot中添加@ResponseBody注解會(huì)發(fā)生什么
- 詳解SpringBoot定制@ResponseBody注解返回的Json格式
- SpringBoot使用@ResponseBody返回圖片的實(shí)現(xiàn)
- 解決使用@ResponseBody后返回500錯(cuò)誤的問題
- 關(guān)于@ResponseBody 默認(rèn)輸出的誤區(qū)的解答
- spring boot @ResponseBody轉(zhuǎn)換JSON 時(shí) Date 類型處理方法【兩種方法】
- Springmvc 4.x利用@ResponseBody返回Json數(shù)據(jù)的方法
- springMvc注解之@ResponseBody和@RequestBody詳解
- SpringMVC中解決@ResponseBody注解返回中文亂碼問題
- @ResponseBody 和 @RequestBody 注解的區(qū)別
- SpringMVC注解之@ResponseBody注解原理
相關(guān)文章
SpringBoot實(shí)現(xiàn)PDF添加水印的三種方法
本文主要介紹了SpringBoot實(shí)現(xiàn)PDF添加水印的三種方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-07-07
深入理解Java中的HashMap的實(shí)現(xiàn)機(jī)制
這篇文章主要介紹了深入理解Java中的HashMap的實(shí)現(xiàn)機(jī)制,同時(shí)也有助于理解Java中對(duì)于哈希函數(shù)的相關(guān)處理方式,需要的朋友可以參考下2015-07-07
SpringMVC對(duì)日期類型的轉(zhuǎn)換示例
本篇文章主要介紹了SpringMVC對(duì)日期類型的轉(zhuǎn)換示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-02-02
java 多線程Thread與runnable的區(qū)別
這篇文章主要介紹了java 多線程Thread與runnable的區(qū)別的相關(guān)資料,java線程有兩種方法繼承thread類與實(shí)現(xiàn)runnable接口,下面就提供實(shí)例幫助大家理解,需要的朋友可以參考下2017-08-08
Kafka消費(fèi)客戶端協(xié)調(diào)器GroupCoordinator詳解
這篇文章主要為大家介紹了Kafka消費(fèi)客戶端協(xié)調(diào)器GroupCoordinator使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10
java實(shí)現(xiàn)本地日期時(shí)間處理
這篇文章主要介紹了本地日期時(shí)間處理的程序,實(shí)現(xiàn)了下面的功能,大家參考使用吧2014-01-01

