SpringMVC返回的ResponseEntity出現(xiàn)亂碼及解決
返回ResponseEntity亂碼
問題
前臺通過數(shù)據(jù)到后臺查詢相關(guān)數(shù)據(jù),結(jié)果是后臺返回的數(shù)據(jù)出現(xiàn)中文出現(xiàn)亂碼,如下圖所示

原因
對于String類型,在沒有在代碼中明確指定編碼類型的情況下,可能后臺對傳輸?shù)臄?shù)據(jù)沒有正確編碼(本人的猜測,時間有限,后面有時間會跟下源碼和看看文檔,發(fā)現(xiàn)真正的原因)
解決
將String類型改為用戶自定義的Pojo,如User等,或者改為List這些比較高級一點的數(shù)據(jù)類型。然后通過@ResponseBody進行序列化,中文亂碼問題解決,如下圖所示。

ResponseEntity下載文件名中文亂碼
SpringBoot下載文件,文件名帶了中文出現(xiàn)亂碼

代碼如下:
return ResponseEntity.ok()
.header("Content-disposition", "attachment;filename=" + fileName)
.contentLength(file.length())
.contentType(MediaType.parseMediaType("application/octet-stream"))
.body(resource);解決辦法
給文件名進行編碼:
fileName = new String(fileName.getBytes("UTF-8"),"ISO-8859-1");問題解決

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
- 解決springboot responseentity<string>亂碼問題
- 使用ResponseEntity作為的返回值的應(yīng)用
- 常用的ResponseEntity.BodyBuilder和自定義ResponseEntity的實例
- springmvc @ResponseStatus和ResponseEntity的使用
- SpringMVC使用ResponseEntity實現(xiàn)文件上傳下載
- 使用spring框架ResponseEntity實現(xiàn)文件下載
- 如何使用spring ResponseEntity處理http響應(yīng)
- 使用ResponseEntity處理API返回問題
相關(guān)文章
Java實現(xiàn)微信網(wǎng)頁授權(quán)的示例代碼
這篇文章主要介紹了Java實現(xiàn)微信網(wǎng)頁授權(quán)的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-07-07
java實現(xiàn)讀取txt文件并以在每行以空格取數(shù)據(jù)
今天小編就為大家分享一篇java實現(xiàn)讀取txt文件并以在每行以空格取數(shù)據(jù),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07
springcloud結(jié)合bytetcc實現(xiàn)數(shù)據(jù)強一致性原理解析
這篇文章主要介紹了springcloud結(jié)合bytetcc實現(xiàn)數(shù)據(jù)強一致性原理解析,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03
Springboot整合Java?DL4J實現(xiàn)交通標志識別系統(tǒng)全過程
在自動駕駛系統(tǒng)中,交通標志識別是實現(xiàn)車輛智能化的關(guān)鍵技術(shù)之一,本文介紹了利用SpringBoot和JavaDeeplearning4j構(gòu)建交通標志識別系統(tǒng)的方法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2024-10-10

