點選按鈕,實現檔案下載,通過按鈕傳送url,spring後臺實現伺服器端檔案下載。
頁面程式碼:
<button id="btn2" type="button" class="btn btn-primary" onclick="DownLoad()">下載</button>
頁面按鈕js程式碼:
function DownLoad(){
window.open(url="http://localhost:8585/sm/sm/download");
}
spring後臺下載功能程式碼:
需要設定請求頭,請求體。
然後使用輸入流讀取檔案,通過輸出流傳送檔案。
@RequestMapping("/sm/download")
public void downLoad(String file, HttpServletRequest request,
HttpServletResponse response) {
String path = "F:\\MyEclipse 9Workspaces\\sm\\smfiledown\\";
File ofile = new File(path);
for (File p : ofile.listFiles()) {
if (!p.isDirectory()) {
String fname = p.getName();
FileInputStream fs = null;
if (p.exists()) {
// response.setContentType("application/force-download");
try {
response.setHeader(
"Content-Disposition",
"attachment;fileName="
+ new String(fname.getBytes("utf-8"),
"iso_8859_1"));
fs = new FileInputStream(p);
byte[] buf = new byte[1024];
int len = 0;
ServletOutputStream o = response.getOutputStream();
while ((len = fs.read(buf)) != -1) {
o.write(buf, 0, len);
}
} catch (Exception e) {
e.printStackTrace();
request.setAttribute("error", " 쳣 ");
} finally {
try {
if (fs != null)
fs.close();
} catch (IOException e) {
request.setAttribute("error", " 쳣 ");
}
}
p.delete();
break;
}
}
}
}
相關文章
- Vue實現點選按鈕進行檔案下載(後端Java)Vue後端Java
- ajax上傳檔案,spring mvc獲取檔案並處理,通過頁面按鈕傳送url,由後臺控制檔案下載SpringMVC
- springCloud 微服務通過minio實現檔案上傳和檔案下載介面SpringGCCloud微服務
- Feign實現檔案上傳下載
- iis實現點選檔案下載而不是開啟檔案
- 使用Vue+go實現前後端檔案的上傳下載,csv檔案上傳下載可直接照搬VueGo後端
- Spring 對檔案上傳下載的支援(Spring boot實現)Spring Boot
- Flutter實現檔案下載Flutter
- AJAX實現檔案下載----
- SpringMVC實現檔案上傳&下載(2)SpringMVC
- Godot遍歷目錄下檔案,並建立按鈕Go
- 前端實現檔案下載和拖拽上傳前端
- 使用Servlet實現檔案下載Servlet
- Flutter 實現檔案下載功能Flutter
- vc實現https檔案下載HTTP
- Java實現檔案下載功能Java
- odoo 給列表檢視新增按鈕實現資料檔案匯入Odoo
- 專案需要實現按鈕懸浮的功能, 實現後的記錄
- 基於js實現點選按鈕回到頂部JS
- React中使用fetch實現檔案上傳下載React
- vue實現Excel檔案的上傳與下載VueExcel
- JavaWeb之實現檔案上傳與下載工具JavaWeb
- JavaWeb之實現檔案上傳與下載元件JavaWeb元件
- JavaWeb之實現檔案上傳與下載示例JavaWeb
- 檔案下載之斷點續傳(客戶端與服務端的實現)斷點客戶端服務端
- js實現txt/excel檔案下載JSExcel
- 2020JavaWeb實現檔案下載JavaWeb
- js下載檔案的實現方式JS
- JavaFx 實現按鈕防抖Java
- 檔案上傳/下載後臺程式碼
- 通過配置檔案(.htaccess)實現檔案上傳
- vue/js實現檔案流下載,檔案下載進度監聽VueJS
- 教你如何實現c#檔案上傳下載功能C#
- JavaWeb之實現檔案上傳與下載外掛JavaWeb
- JavaWeb之實現檔案上傳與下載原始碼JavaWeb原始碼
- JavaWeb之實現檔案上傳與下載例項JavaWeb
- spring cloud feign 檔案上傳和檔案下載SpringCloud
- requests如何友好地請求下載大檔案?requests實現分段下載、斷點續傳斷點