點選按鈕,實現檔案下載,通過按鈕傳送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
- 通過xml檔案實現自定義圓角按鈕,以及點選效果XML
- 檔案上傳按鈕樣式
- 點選回車實現按鈕點選功能
- Spring Boot + thymeleaf 實現檔案上傳下載Spring Boot
- iis實現點選檔案下載而不是開啟檔案
- JS實現點選按鈕複製當前介面的URLJS
- 使用Vue+go實現前後端檔案的上傳下載,csv檔案上傳下載可直接照搬VueGo後端
- 如何點選一個按鈕實現列印
- 點選按鈕實現數字增加效果
- Flutter實現檔案下載Flutter
- AJAX實現檔案下載----
- Feign實現檔案上傳下載
- springCloud 微服務通過minio實現檔案上傳和檔案下載介面SpringGCCloud微服務
- PHP實現檔案下載斷點續傳詳解PHP斷點
- jquery實現的按鈕點選後60秒後才能夠再點選jQuery
- 點選按鈕實現狀態切換效果
- 點選按鈕實現圖片切換效果
- 前端實現檔案下載和拖拽上傳前端
- java實現sftp檔案的上傳下載JavaFTP
- SpringMVC實現檔案上傳&下載(2)SpringMVC
- Flutter 實現檔案下載功能Flutter
- Java實現檔案下載功能Java
- Weex 實現檔案的下載
- servlet實現檔案下載demoServlet
- Django 實現下載檔案功能Django
- 利用IhttpHandler實現檔案下載HTTP
- 使用Servlet實現檔案下載Servlet
- Godot遍歷目錄下檔案,並建立按鈕Go
- 仿 360 市場下載按鈕
- Spring 對檔案上傳下載的支援(Spring boot實現)Spring Boot
- Jsp+Servlet實現檔案上傳下載(一)--檔案上傳JSServlet
- 基於js實現點選按鈕回到頂部JS
- 點選按鈕實現文字放大和縮小功能
- 專案需要實現按鈕懸浮的功能, 實現後的記錄
- odoo 給列表檢視新增按鈕實現資料檔案匯入Odoo
- 檔案下載之斷點續傳(客戶端與服務端的實現)斷點客戶端服務端