From f9acca94bd913c3e155dc86245df372910f8d76e Mon Sep 17 00:00:00 2001
From: zxl <763096477@qq.com>
Date: 星期二, 09 九月 2025 14:46:39 +0800
Subject: [PATCH] 视频下载问题以及文档
---
文档.md | 30 +++++++++++++++
src/main/java/com/mindskip/xzs/controller/common/UploadController.java | 47 +++++++++++++++++------
2 files changed, 65 insertions(+), 12 deletions(-)
diff --git a/src/main/java/com/mindskip/xzs/controller/common/UploadController.java b/src/main/java/com/mindskip/xzs/controller/common/UploadController.java
index 078ef2c..406c700 100644
--- a/src/main/java/com/mindskip/xzs/controller/common/UploadController.java
+++ b/src/main/java/com/mindskip/xzs/controller/common/UploadController.java
@@ -12,10 +12,9 @@
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.io.OutputStream;
+import java.io.*;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.util.HashMap;
import java.util.UUID;
@@ -85,16 +84,40 @@
throw new RuntimeException("鏂囦欢涓嶅瓨鍦�");
}
- // 璇诲彇鏂囦欢鍐呭
- byte[] fileContent = Files.readAllBytes(file.toPath());
-
- // 璁剧疆鍝嶅簲澶�
- response.setHeader("Content-Disposition", "attachment; filename=" + fileName);
+ String encodedFileName = URLEncoder.encode(fileName, StandardCharsets.UTF_8.name());
+ response.setHeader("Content-Disposition", "attachment; filename*=UTF-8''" + encodedFileName);
response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);
+ response.setContentLengthLong(file.length()); // 璁剧疆鏂囦欢澶у皬锛屼究浜庢祻瑙堝櫒鏄剧ず杩涘害
- // 灏嗘枃浠跺唴瀹瑰啓鍏ュ搷搴旇緭鍑烘祦
- response.getOutputStream().write(fileContent);
- response.getOutputStream().flush();
+
+ // 娴佸紡浼犺緭锛氫娇鐢ㄧ紦鍐叉祦鍒嗗潡璇诲啓锛岄伩鍏嶄竴娆℃�у姞杞芥暣涓枃浠跺埌鍐呭瓨
+ try (InputStream in = new BufferedInputStream(new FileInputStream(file));
+ OutputStream out = new BufferedOutputStream(response.getOutputStream())) {
+
+ byte[] buffer = new byte[8192]; // 8KB缂撳啿鍖�
+ int len;
+ // 寰幆璇诲彇鏂囦欢鍐呭锛屾瘡娆¤8KB锛屽啓鍏ュ搷搴旇緭鍑烘祦
+ while ((len = in.read(buffer)) != -1) {
+ out.write(buffer, 0, len);
+ }
+ out.flush(); // 纭繚鏈�鍚庝竴閮ㄥ垎鏁版嵁琚啓鍑�
+ } catch (IOException e) {
+ throw new RuntimeException("鏂囦欢涓嬭浇澶辫触", e);
+ }
+
+
+// // 璇诲彇鏂囦欢鍐呭
+// byte[] fileContent = Files.readAllBytes(file.toPath());
+//
+// // 璁剧疆鍝嶅簲澶�
+// response.setHeader("Content-Disposition", "attachment; filename=" + fileName);
+// response.setContentType(MediaType.APPLICATION_OCTET_STREAM_VALUE);
+//
+//
+//
+// // 灏嗘枃浠跺唴瀹瑰啓鍏ュ搷搴旇緭鍑烘祦
+// response.getOutputStream().write(fileContent);
+// response.getOutputStream().flush();
}
}
diff --git "a/\346\226\207\346\241\243.md" "b/\346\226\207\346\241\243.md"
new file mode 100644
index 0000000..fa45e43
--- /dev/null
+++ "b/\346\226\207\346\241\243.md"
@@ -0,0 +1,30 @@
+# 娴嬭瘯鐜
+
+鏈嶅姟鍣↖P锛�80.36.32.171
+
+杩滅▼杩炴帴锛歳oot Bai_123
+
+## 椤圭洰jar鍖呭湴鍧�
+/usr/local/fzdd/jv
+## 鏃ュ織鍦板潃
+/usr/log/xzs
+
+## 璐﹀彿瀵嗙爜
+
+### 鑰冭瘯鍚庡彴
+
+```
+admin
+123456
+```
+
+### 鑰冭瘯瀹㈡埛绔�
+
+```
+student
+123456
+```
+
+
+
+
--
Gitblit v1.8.0