问题描述

本地环境下载resources下的excel文件能成功,但是部署到服务器之后就获取不到文件流,采用的是docker部署
excel模板文件目录

POI依赖

            <dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-base</artifactId><version>4.4.0</version></dependency><dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-web</artifactId><version>4.4.0</version></dependency><dependency><groupId>cn.afterturn</groupId><artifactId>easypoi-annotation</artifactId><version>4.4.0</version></dependency>

java代码

public void downCarTemplate(HttpServletResponse response) {String fileNameDate = DateUtil.format(new Date(), DatePattern.PURE_DATETIME_PATTERN);String fileName = "中文名称" + fileNameDate.substring(2);Workbook workbook = null;try {InputStream stream = CarInfoServiceImpl.class.getClassLoader().getResourceAsStream(ExcelTemplateConstants.CAR_TEMPLATE_DOWN);workbook = new XSSFWorkbook(stream);ExcelUtils.downLoadExcel(fileName + ".xlsx", response, workbook);} catch (Exception e) {e.printStackTrace();}}public class ExcelUtils {private static final Logger log = LoggerFactory.getLogger(ExcelUtils.class);public static void downLoadExcel(String fileName, HttpServletResponse response, Workbook workbook) {ServletOutputStream outputStream = null;try {outputStream = response.getOutputStream();response.setCharacterEncoding("UTF-8");response.setHeader("content-Type", "application/vnd.ms-excel");response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName, "UTF-8") + "");workbook.write(outputStream);} catch (IOException e) {e.printStackTrace();} finally {IOUtils.closeQuietly(outputStream);if (workbook != null) {try {workbook.close();} catch (IOException e) {e.printStackTrace();}}}}}
生产报错信息

源码跟踪

日志信息
无法获取到文件-->/tempalte/中文名称.xlsx

解决方案
将中文名改成英文,就可以正常找到文件下载


疑问:不知道是不是因为docker的原因?目前还没找到中文的解决方案,只是找了个中转的方式来解决这个问题,望大佬们指正

记录生产问题之Excel模板文件下载相关推荐

  1. 用vba实现将记录集输出到Excel模板

    代码如下: '************************************************  '** 函数名称:  ExportTempletToExcel  '** 函数功能:  ...

  2. excel模板文件下载

    方案一: 以下demo主要采用的方案是在项目的resources/template文件夹下存放好限定了若干条件的excel文件,用流的方式下载,支持弹窗方式选定下载路径和后端指定路径的方式. 首先需要 ...

  3. excel模板文件下载与导入校验

    下载模板文件 window.location.href = encodeURI(basePath + "/util/downtemplate.jsp?filename="+file ...

  4. SpringBoot打成jar包部署,Excel模板下载文件损坏,提示恢复问题处理

    Spring Boot 静态资源Excel模板文件下载遇到的坑 问题描述: 使用spring boot,在resource/static目录下,有Excel模板文件, 需要提供给用户下载,用于数据的导 ...

  5. java 动态导出excel表单 无模板文件下载

    java 动态导出excel表单 无模板文件下载 public ResponseEntity<byte[]> exportStanding(@PathVariable Long signu ...

  6. 下载excel模板为空记录

    记录一次开发下载excel模板记录 项目场景: 需求是下载excel导入模板 问题描述: 代码中模板位置: 代码是这样的: //获取模板文件输入流 InputStream resourceAsStre ...

  7. Vue+SpringBoot 实现Excel表下拉框与模板文件下载

    最近做的项目需要实现该功能,经过查找相关博客,故在此做整理. 一.前端 1.在A.service.js文件中 import axios from 'axios' // 业务服务上下文 const ba ...

  8. Vue + JAVA 实现Excel的模板文件下载

    文章目录 前言 一.JAVA后端接口设计 二.Vue前端页面设计 总结 前言 实现前端页面基于 Vue, 后端基于 JAVA ,最终通过前台页面点击下载excel模板文件,调用后端接口返回模板文件的输 ...

  9. 使用 EasyPOI 优雅导出Excel模板数据(含图片)

    点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 作者 | 星悬月 来源 | blog.csdn.net/ ...

最新文章

  1. 近期活动盘点:三创对接会——先进制造专场
  2. oracle终止dbms调度,Oracle使用DBMS_JOB创建的数据库作业,遇到数据库关闭状态的调度...
  3. C++ 类模板中友元函数问题
  4. 冷热分离和直接使用大数据库_智能冷热分离的思考-内存数据库
  5. sp根据备份文件来创建DB
  6. 《计算机小常识》一不小心把windows资源管理器给结束任务了,电脑黑屏了怎么办?
  7. 排错万能金钥匙之Linux系统应用
  8. 市政管理学试题及答案
  9. usaco Name That Number
  10. 《与我长跑十年的女友就要嫁人了》…
  11. mysql中floor的用法_Mysql报错注入之floor报错详解
  12. People Counter - People Counting
  13. pool(六)——JedisPool
  14. SharedPreferences的使用与Sqlite的使用
  15. 显卡Memory Clock上限问题排查实践
  16. Python求100以内素数的和。
  17. 虚拟机解决了什么问题
  18. 计算机桌面图标设置打字图标,电脑的打字图标不见了怎么办
  19. Mysql 安装 000007b_w7电脑蓝屏0x0000007b的解决方法
  20. Win11IP地址在哪里看?Win11查看本机IP地址的方法

热门文章

  1. 第39级台阶问题(递归算法)
  2. Linux、Ubuntu配置ntpd.conf后时间无法同步的问题
  3. 买了个纽曼大灵通3.5t硬盘盒,郁闷啊
  4. 公司官网 3版完成后的总结
  5. sql server charindex和patindex详解(转)
  6. Android触控基础 MotionEvent
  7. android抖音切换实现,【Android 进阶】仿抖音系列之视频预览和录制(五)
  8. PostgreSQL服务器管理:从源代码安装
  9. android 6.0表情下载,谷歌Android 6.0.1推送 一大波新表情来了
  10. zz美国最新最时尚的英语词汇so hot!