如何使用spring框架ResponseEntity实现文件下载
发表于:2025-01-18 作者:千家信息网编辑
千家信息网最后更新 2025年01月18日,这篇文章给大家分享的是有关如何使用spring框架ResponseEntity实现文件下载的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。spring框架ResponseEn
千家信息网最后更新 2025年01月18日如何使用spring框架ResponseEntity实现文件下载
这篇文章给大家分享的是有关如何使用spring框架ResponseEntity实现文件下载的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
spring框架ResponseEntity实现文件下载
后台代码
@RequestMapping("downLoad")public ResponseEntitydownloadPromisePdf() { String fileName = "企业诚信守法承诺书.pdf"; try { byte[] pdf = **;//byte文件 String dfileName = new String(fileName.getBytes("gb2312"), "iso8859-1"); HttpHeaders headers = new HttpHeaders(); headers.setContentType(MediaType.APPLICATION_OCTET_STREAM); headers.setContentDispositionFormData("attachment", dfileName); return new ResponseEntity<>(pdf, headers, HttpStatus.OK); } catch (BuzEx e){ logger.error( e.getMessage()); }catch (Exception e) { } return null;}
前端直接_window.location.href='/downLoad';
ResponseEntity免压缩多文件下载
免压缩批量文件下载
后台ResponseEntity代码还是一次请求下载一个
前台js改为发出多个请求
js中先用数组储存需要下载的文件参数信息,然后循环数组执行下载方法,下载方法则先ajax判断文件是否存在,是则动态创建a标签批量下载文件
//获得文件数组ids后 循环下载方法$.each(ids,function(i,value){ downLoad(fileFunctionPathArray[i],fileNameInServerArray[i],fileOriginalNameArray[i],ids[i]); })//下载方法function downLoad(fileFunctionPath,fileNameInServer,fileOriginalName,ids){ $.ajax({ //检查文件是否存在 url: "/ResourceManage/resourceDownloaduserLink/checkPermission", data: { sysuserid: localStorage.getItem("id"), resourceid: ids }, success: function (data) {//文件存在则创建动态a标签批量下载文件 if (data.success) { //ResponseEntity下载文件的url var url = "../filehandle/downLoad.do?filePlatPath=" + "resource&fileFunctionPath=" + fileFunctionPath + "&fileNameInServer=" + fileNameInServer + "&fileOriginalName=" + fileOriginalName; var fileName = fileNameInServer; downloadFile(url,fileName);//动态创建a标签 批量下载 } } }) } //动态创建a标签 const downloadFile = (url, fileName = '') => { let eleLink = document.createElement('a'); eleLink.download = fileName; eleLink.style.display = 'none'; eleLink.href = url; // 受浏览器安全策略的因素,动态创建的元素必须添加到浏览器后才能实施点击 document.body.appendChild(eleLink); // 触发点击 eleLink.click(); // 然后移除 document.body.removeChild(eleLink); };
点击下载则会 批量同时下载
感谢各位的阅读!关于"如何使用spring框架ResponseEntity实现文件下载"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
文件
文件下载
动态
方法
标签
框架
数组
代码
内容
后台
更多
浏览器
篇文章
循环
浏览
不错
实用
安全
企业
信息
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
微梦创科网络技术有限公司张瑜
塔科夫能玩的服务器
增城数据库恢复
学校的ssci数据库在哪里找
分散服务器容灾
广州盛驰互联网科技
中国 物联网络安全
无忧行服务器繁忙
软件开发中的前端是什么
数字网络安全联盟
云服务器挖矿
我心中的网络安全观分享
互联网新科技有限公司
西安金赤鸟互联网科技
数据库 树结构查询
数据库系统的基本概念
片头下载软件开发
本地服务器配置公网ip
重庆科技学院软件开发
数据库如何将两个表并
遥感为主的软件开发
网络安全相关考试题
轻量云服务器+管理文件
云服务器挖矿
人口信息数据共享网络安全
定时任务实现每分钟查询数据库
服务器数据最安全的备份方法
长沙法度互联网科技有限公司微信
如何把数据库的结构导出
软件开发合同商品内容