SpringBoot打成jar包部署后,读取resources下的静态资源

本文介绍了在SpringBoot项目打包为jar后,遇到读取resources/static/templates目录下静态资源的问题。通过调整获取路径的方法,解决了资源找不到的问题。然而,下载的文件出现损坏,经检查发现是打包过程中的问题。通过在pom.xml中添加特定的资源配置,排除了.xlsx和.xls文件的过滤,成功解决问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天碰到一个业务场景,待下载的报表模板要放在resources/static/templates目录下,

然后项目打包以jar包的形式部署到服务器上;


前端点击下载模板按钮后,下载对应的报表模板。但在下载的过程中碰到无法读取该目录下的资源,报无法找到该资源,
经过排查发现是获取路径的方法有问题,后改用:

@Autowired
ResourceLoader resourceLoader;

Resource resource = resourceLoader.getResource("classpath:static/templates/performance/"+fileName);

则可以读取到该资源(Linux与windows环境都可以获取)。

然后进行下载操作。但下载后又遇到问题了:文件损坏无法打开,查看targer下的文件也无法打开,于是想到应该就是打包的过程中出现的问题,就在pom中做如下操作:

<resources>
    <resource>
        <directory>src/main/resources</d
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值