欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

SpringMVC返回的ResponseEntity出现乱码及解决

时间:2022-09-16 10:15:59|栏目:JAVA代码|点击:

返回ResponseEntity乱码

问题

前台通过数据到后台查询相关数据,结果是后台返回的数据出现中文出现乱码,如下图所示

原因

对于String类型,在没有在代码中明确指定编码类型的情况下,可能后台对传输的数据没有正确编码(本人的猜测,时间有限,后面有时间会跟下源码和看看文档,发现真正的原因)

解决

将String类型改为用户自定义的Pojo,如User等,或者改为List这些比较高级一点的数据类型。然后通过@ResponseBody进行序列化,中文乱码问题解决,如下图所示。

ResponseEntity下载文件名中文乱码

 SpringBoot下载文件,文件名带了中文出现乱码

代码如下:

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");

问题解决

上一篇:Springboot通过run启动web应用的方法

栏    目:JAVA代码

下一篇:使用Mybatis接收Integer参数的问题

本文标题:SpringMVC返回的ResponseEntity出现乱码及解决

本文地址:http://www.codeinn.net/misctech/213800.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有