springboot访问下载/resource/static下的静态资源;下载excel文件损坏,打不开
放文件直接把文件放到resource下的static文件夹中看编译结果启动之后看看是否被编译了访问,下载然后在浏览器输入下面地址就能自动下载文件了http://localhost:8002/消息模板.xlsx注意 不用在消息模板.xlsx前面 加 /static这一层级,因为springboot默认的静态资源路径就是classpath:/resource/static文件访问不了的解决办法文件能下
放文件
直接把文件放到resource下的static文件夹中
看编译结果
启动之后看看是否被编译了
访问,下载
然后在浏览器输入下面地址就能自动下载文件了
http://localhost:8002/消息模板.xlsx
注意 不用在消息模板.xlsx前面 加 /static这一层级,因为springboot默认的静态资源路径就是classpath:/resource/static
文件访问不了的解决办法
文件能下载,但是打不开
可以自己看一看,是不是原文件(static文件夹中)的大小 与 编译后(target/static文件夹中)的大小不一样,如果是,说明编译过程出现了问题
解决办法:
在pom中加上如下配置,然后mvn clean重新启动
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<version>2.6</version>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<encoding>UTF-8</encoding>
<nonFilteredFileExtensions>
<nonFilteredFileExtension>xlsx</nonFilteredFileExtension>
</nonFilteredFileExtensions>
</configuration>
</plugin>
原因就是springboot的resource目录下的文件是默认自动压缩的,所以直接下载打开会出错。
这个插件可以避免xlsx文件在resource目录下被自动压缩,这样就可以正常下载,打开了
解决办法参见:
Springboot下载Excel文件,解决文件损坏问题 - 简书
如果上述办法还不行,原因可能是:
一定要mvn clean,但是不知道为什么有时候target中的文件没被清掉,因此手动删除了一下,然后又各种build,rebuild,mvn clean才行
本来之前还尝试了一下 下面的配置,但是我这边行不通,可能是我的target没有清干净
spring-boot 下载resources 下excel xlsx文件损坏,无法打开,excel xls文件乱码_茌山之北的博客-CSDN博客
相关资源
如果要修改静态资源路径参见:
springboot配置静态资源访问路径 - 快乐的小乐 - 博客园
Springboot 之 静态资源路径配置 - ^梦幻星空^ - 博客园
如果觉得路径没问题,但是还是访问不了,可以考虑是不是拦截器的问题:
springboot 静态资源(static)无法访问问题404_aogula的博客-CSDN博客_springboot静态资源访问404
服务器端找不到路径问题:
更多推荐
所有评论(0)