FastExcel 本地开发和Linux上上传Resource文件的差异性

不能直接通过路径来获取

这个是一个下载导出文件的操作

java 复制代码
@GetMapping(value = "/export/all")
public void exportAll(HttpServletResponse response, LaylineListReq req) throws IOException {
    // 从类路径下获取 Excel 文件资源
    ClassPathResource classPathResource = new ClassPathResource("template/放线表主数据导入系统模板_template.xlsx");
    // 获取文件输入流
    InputStream inputStream = classPathResource.getInputStream();

    String fileName = "xxx"

    fileName = URLEncoder.encode(fileName, "UTF-8").replaceAll("\\+", "%20");
    response.setCharacterEncoding("UTF-8");
    response.setContentType("application/vnd.ms-excel");
    response.setHeader("Content-Disposition", "attachment;filename=" + fileName + ".xlsx");
    response.setHeader("Access-Control-Expose-Headers", "Content-Disposition");

    EasyExcel.write(response.getOutputStream())
            .withTemplate(inputStream)
            .sheet()
            .doFill(list);
}

获取填充模版也需要先转换成 inputStream,不能照着官方的写法读取文件,下面是官方的写法,可以对比一下

相关推荐
我真会写代码38 分钟前
深度解析并发编程锁升级:从偏向锁到重量级锁,底层原理+面试考点全拆解
java·并发编程·
Meepo_haha44 分钟前
创建Spring Initializr项目
java·后端·spring
会编程的土豆44 分钟前
C++中的 lower_bound 和 upper_bound:一篇讲清楚
java·数据结构·算法
Memory_荒年1 小时前
SpringBoot事务源码深度游:从注解到数据库的“奇幻漂流”
java·后端·spring
编码忘我1 小时前
为什么要用SpringBoot
java·后端
神舟之光1 小时前
Java面向对象编程知识补充学习-2026.3.21
java·开发语言·学习
Memory_荒年1 小时前
SpringBoot事务:从“一键开关”到“踩坑大全”的生存指南
java·后端·spring
DJ斯特拉1 小时前
SpringAOP
java
张涛酱1074561 小时前
Spring AI 2.0.0-M3 新特性解析:MCP核心集成与重大升级
java
小刘不想改BUG1 小时前
LeetCode 138.随机链表的复制 Java
java·leetcode·链表·hash table