在controller接口入参直接传HttpServletResponse
response,然后设置文件名称(fileName)和需要下载的文件类型(contentType),inputStream是要下载的文件流,无论是网络文件还是存储在阿里OSS或者腾讯COS静态存储服务中的文件,都可以转化成InputStream的形式。

 @GetMapping("/download")public void download(HttpServletResponse response) {return this.downloadFile(response);}public void downloadFile(HttpServletResponse response, InputStream inputStream, String fileName, String contentType) {try (BufferedOutputStream out = new BufferedOutputStream(response.getOutputStream())) {//通知浏览器以附件形式下载response.setHeader("Content-Disposition", String.format("attachment; filename=\"%s\"", fileName));//文件输出格式response.setContentType(contentType);byte[] car = new byte[1024];int len;while ((len = inputStream.read(car)) != -1) {out.write(car, 0, len);}} catch (IOException e) {log.error("Method:downloadFile,ErrorMsg:{}", e.getMessage());}}

启动本地服务,把该接口链接url复制在浏览器上,点击回车,就可以看到下载效果了。如果在postman上测试,则需要在以下界面点下载按钮:

以上方法亲测有效,如果对你有帮助帮忙点个赞吧!

java下载文件到默认浏览器路径相关推荐

  1. SpringBoot后台java下载文件及注意的地方

    SpringBoot后台java下载文件及注意的地方 下载效果 后台关键代码 控制类中 @RequestMapping("/file") @ResponseBody public ...

  2. Java下载文件时文件名出现乱码(但文件内容正常)

    今天写文件下载时,发现以前忽略的问题,写个小记录 我们一般使用中文操作系统,所以要求的 文件名编码最好是utf-8,国际化一点 但是,似乎实际上不是这样 1. String fileName=new ...

  3. java文件损坏_用java下载文件 - 文件损坏

    这里是我的code.i写这个下载MP3苍蝇,视频文件&图像. 我用FileOutputStream中处理文件.. 的所有文件都下载好.. MP3文件working..but图像和视频被破坏用j ...

  4. Java下载文件记事本打开不换行问题

    Java下载文件记事本打开不换行问题,其他编辑器可以换行: 原因是下载的内容用的是\n,而win记事本是用的\r\n java 将\n转换为\r\n String script = editText. ...

  5. java 下载文件内容为空_java 下载文件 内容为空。

    Java日志使用slf4j 配置log4j后,有日志文件 但日志文件内容为空 SLF4J的全称是Simple Logging Facade for Java,即简单日志门面. SLF4J并不是具体的日 ...

  6. java下载文件以及预览

    java下载文件以及预览 1.代码如下 /*** 不需要返回HttpServletResponse,会报错* @param response*/@GetMapping("/downloadF ...

  7. Java下载文件时文件名中的中文变成下划线,其他正常

    问题: 问题源码 package com.lm.cms2.controller;import org.springframework.stereotype.Controller; import org ...

  8. ie11 java 下载文件_Javaweb实现上传下载文件的多种方法

    在Javaweb中,上传下载是经常用到的功能,对于文件上传,浏览器在上传的过程中是以流的过程将文件传给服务器,一般都是使用commons-fileupload这个包实现上传功能,因为commons-f ...

  9. JAVA下载文件的几_详解Java文件下载的几种实现方式

    Java文件下载的几种方式,具体如下: public HttpServletResponse download(String path, HttpServletResponse response) { ...

最新文章

  1. linux系统创建lvm卷,LVM逻辑卷创建管理
  2. react hooks使用_为什么要使用React Hooks?
  3. WSL2问题汇总:转换为WSL2、WSL2代理、安装MySQL等
  4. [Android] 图像各种处理系列文章合集
  5. Web服务器的配置与管理(2) 虚拟主机技术
  6. MySQL安装图解 地址
  7. win10,Net Share 共享,每次开机都会出现 --- 彻底关闭的方法---禁用server服务
  8. CentOS 7 多网卡绑定
  9. zynq开发系列4:MIO按键中断控制LED
  10. 10.Hello World 的 Java 项目创建和项目配置文件讲解
  11. extjs中的flex_Extjs 教程
  12. 课程设计题五:汽车尾灯控制器设计
  13. Postman下载安装及汉化
  14. 高数__已知2个平面方程, 求这2个平面的夹角
  15. 2018研究生毕业论文重复率检测八要点
  16. 三星s8android pie,三星修改Galaxy S8的Android Pie更新时间表,并添加M2
  17. 今日头条下拉框推广,出效果付费
  18. [Translation]《迈陂塘》
  19. 计算机控制器输入设备的功能是,计算机5大部件之一的控制器的作用是什么?...
  20. 百度地图API支持HTTPS

热门文章

  1. RH358访问基于块的网络存储--自动化配置iSCSI initiator
  2. 阅读论文Formal verification of smart contracts based on users and blockchain behaviors models
  3. 分类:朴素贝叶斯分类方法
  4. 协议--SCCB与IIC的区别
  5. i386和X86是什么意思
  6. 高并发架构系列:如何从0到1设计一个类Dubbo的RPC框架
  7. 最新GLove词向量预训练文件国内服务器下载
  8. mysql 排除字段_mysql中select某表时排除个别字段,shell实现
  9. DL4J的神经网络输入处理DataSet介绍
  10. VMware安装的虚拟机窗口如何自适应屏幕大小