SpringBoot通過接口下載resources下的文件方式
更新時(shí)間:2025年09月13日 16:45:56 作者:乘風(fēng)御浪云帆之上
SpringBoot通過接口下載resources目錄文件,解決jar包部署后資源路徑不可直接訪問的問題,利用Resource類加載文件,通過HttpServletResponse返回流,實(shí)現(xiàn)用戶下載功能
解決的問題
當(dāng)項(xiàng)目打成jar包進(jìn)行部署時(shí),一些示例文件放在resources目錄下,提供接口供用戶訪問下載
文件存放位置

接口實(shí)現(xiàn)
@RequestMapping("/downloadExampleExcel")
@ResponseBody
public void downloadExampleExcel(HttpServletResponse response) {
InputStream inputStream = null;
ServletOutputStream servletOutputStream = null;
try {
Resource resource = new DefaultResourceLoader().getResource("classpath:example_add_infos.xls");
response.setContentType("application/force-download");
response.setHeader("Content-Disposition", "attachment;fileName=" + "example_add_infos.xls");
inputStream = resource.getInputStream();
servletOutputStream = response.getOutputStream();
IOUtils.copy(inputStream, servletOutputStream);
response.flushBuffer();
} catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (servletOutputStream != null) {
servletOutputStream.close();
servletOutputStream = null;
}
if (inputStream != null) {
inputStream.close();
inputStream = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
}總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
springboot+spring?data?jpa實(shí)現(xiàn)新增及批量新增方式
這篇文章主要介紹了springboot+spring?data?jpa實(shí)現(xiàn)新增及批量新增方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-11-11
詳細(xì)說明關(guān)于Java的數(shù)據(jù)庫連接(JDBC)
這篇文章主要介紹了詳細(xì)說明關(guān)于Java的數(shù)據(jù)庫連接JDBC,JDBC是用Java語言向數(shù)據(jù)庫發(fā)送SQL語句,需要的朋友可以參考下面文章內(nèi)容2021-09-09
idea如何自動(dòng)生成Dao,mapper,pojo類
文章介紹了自動(dòng)生成Daomapperpojo類的過程,包括需要的兩個(gè)配置文件db.properties和generatorConfig.xml,以及在pom.xml中添加依賴,最后,通過雙擊某個(gè)文件,控制臺(tái)出現(xiàn)success即可生成所需類2026-03-03
Java實(shí)現(xiàn)ArrayList自動(dòng)擴(kuò)容
ArrayList的擴(kuò)容規(guī)則是非常簡(jiǎn)單的,它會(huì)根據(jù)需要自動(dòng)擴(kuò)容,本文就來介紹一下Java實(shí)現(xiàn)ArrayList自動(dòng)擴(kuò)容,具有一定的參考價(jià)值,感興趣的可以了解一下2023-12-12

