2019独角兽企业重金招聘Python工程师标准>>>

@RequestMapping(value = {"admin/download","teacher/download","student/download"})public void download(Long id, HttpServletResponse response, HttpServletRequest request) throws InterruptedException {//通过文件id获取文件详情FileUploadRecord fileUploadRecord = fileUploadRecordService.findById(id);//获取文件名称String fileName = fileUploadRecord.getFileName();try {if (request.getHeader("User-Agent").toLowerCase().indexOf("firefox") > 0) {fileName = new String(fileName.getBytes("UTF-8"), "ISO8859-1"); // firefox浏览器} else if (request.getHeader("User-Agent").toUpperCase().indexOf("MSIE") > 0) {fileName = URLEncoder.encode(fileName, "UTF-8");// IE浏览器} else if (request.getHeader("User-Agent").toUpperCase().indexOf("CHROME") > 0) {fileName = new String(fileName.getBytes("UTF-8"), "ISO8859-1");// 谷歌}String path = fileUploadRecord.getFileUri();response.setContentType("application/octet-stream");response.setHeader("Content-Disposition","attachment;filename="+fileName);hdfsService.toOutputStream(path, response.getOutputStream());} catch (FileNotFoundException e) {logger.warn("hdfs没有此文件:" + fileName);response.setContentType(null);response.setStatus(HttpServletResponse.SC_NOT_FOUND);} catch (IOException e) {logger.error(e.getMessage());response.setContentType(null);response.setStatus(HttpServletResponse.SC_BAD_REQUEST);}}

转载于:https://my.oschina.net/projerry/blog/3047313

springboot浏览器下载相关推荐

  1. SpringBoot Poi导出word,浏览器下载

    文章目录 SpringBoot Poi导出word,浏览器下载 1.引依赖: 2.写代码(生成本地word): 3.返回给浏览器下载 1.如何返回给浏览器让它下载 4.解决方案 5.为什么没使用eas ...

  2. SpringBoot实现利用浏览器下载文件

    SpringBoot实现利用浏览器下载文件 @RestController @RequestMapping("file") @Api(tags = "下载文件" ...

  3. Springboot apache poi 浏览器下载 excel

    在日常干活中,经常会遇到后端实现下载文件的需求,将自己实现的步骤记录下来,以便以后查看方便或者帮助更多的同学. springboot POST 接口,支持浏览器下载excel文件,具体实现实现: 1. ...

  4. springboot Java实现多文件的zip压缩操作 + 通过浏览器下载文件的两种方式

    注只适配utf-8的场景,待完善! 压缩为zip文件 通过java程序输出文件 /*** 功能:压缩多个文件成一个zip文件* @param srcfile:源文件列表* @param zipfile ...

  5. Springboot实现浏览器下载文件

    public void getUnbondFile(HttpServletResponse response) throws FileNotFoundException, UnsupportedEnc ...

  6. Java使用poi导出数据到excel(包括xls和xlsx两种格式)并通过浏览器下载

    情景:将数据导出到excel是java开发常用的功能,数据量不大的时候,xls和xlsx两种格式的文件都行,但是数据量太大的时候就有区别了,xls格式的文件一个sheet页最多只能存六万多条数据,而x ...

  7. java游戏下载ios_java浏览器下载

    java浏览器下载 对这款游戏感兴趣的玩家可以来我们网站下载试玩. She nodded, surprised to find that her eyes had suddenly filled wi ...

  8. 使用uni-app实现使用浏览器下载功能时,安卓端部分机型不兼容问题(小米/华为)

    在公司中使用 uni-app 进行移动端开发过程中涉及到检查更新功能的一些奇葩问题(主要是plus.runtime.openURL的使用)和大家进行分享一下. 文章目录 1. 实现检查更新用的方法 1 ...

  9. 微信打开网页下载东西时如何调用其他浏览器下载

    很多朋友问我怎么解决微信内点击链接或扫描二维码打开网页时可以直接跳出微信在外部浏览器打开网页链接,其实这并不难,只要我们实现微信跳转功能即可.下面给大家介绍这个功能 功能目的 生成微信跳转链接,实现微 ...

最新文章

  1. [转载]Linux用户管理全攻略(八)
  2. 【DBMS 数据库管理系统】数据仓库中 数据追加 ( 时标方法 | DELTA 文件法 | 前后映像文件法 | 日志文件法 )
  3. chm 能插入公式吗_批量提取表格名称、插入空列,教你三下五除二秒速完成!...
  4. java中的枚举类_java中的枚举类型
  5. oracle无法重建em,ORACLE 11g, EM 无法启动的问题和重建
  6. Java的值传递和引用值传递的区别
  7. stanford python中文分词
  8. 计算机网络---计算机网络分层结构
  9. 2021-2025年中国电子薄膜开关行业市场供需与战略研究报告
  10. 预处理_浅析雨水收集系统——雨水预处理
  11. 《统计学》(贾俊平)考研初试完整学习笔记1~5章
  12. 关于table表格头部固定和列固定的方式
  13. nvidia-patch解除nvidia消费级显卡编码并发数量限制操作记录
  14. 数据库相关类型(日期、复合、bit、布尔)
  15. [SSL_CHX][2021-08-19]子矩阵求和
  16. 计算机基础应用本终结性考试,计算机应用基础
  17. 2.7 zio入门——更多的Effect构造函数
  18. php按一列拆分excel表格,excel表格要根据某一列数据拆分-excel怎么按照某一列拆分表格...
  19. (精华)2020年8月7日 微信小程序 直播功能的实现
  20. 用python在excel中做批量计算(包括单元格为空值时的处理情况)

热门文章

  1. Orchestrator部署
  2. 在树莓派上使用Grbl Controller
  3. 推荐一个Arduino学习模拟器: 123D Circuites
  4. 正式开始研究exo项目
  5. 数据库视图和索引基本知识
  6. 【天梯赛】单词长度、社交网络图中结点的“重要性”计算、朋友圈、家谱处理、狼人杀
  7. ESP8266-01S接入机智云物联网平台
  8. 海思linux中编译,linux 编译安桌系统 海思
  9. AT命令介绍和简单使用
  10. 弹出式窗口及网页对话框