From 06485762bf4d33c12d9ee19a95508cc49895b43a Mon Sep 17 00:00:00 2001 From: whb <17803890193@163.com> Date: Wed, 31 Jul 2024 17:26:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=9B=86=E4=B8=8B=E8=BD=BD?= =?UTF-8?q?=E5=88=B0=E5=8F=A6=E4=B8=80=E4=B8=AA=E6=9C=8D=E5=8A=A1=E5=99=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/stu/JupyterController.java | 25 +++++++++++++++++++ .../util/file/IFileUtil.java | 1 + .../util/file/LocalFileUtil.java | 24 +++++++++++++++++- 3 files changed, 49 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/sztzjy/financial_bigdata/controller/stu/JupyterController.java b/src/main/java/com/sztzjy/financial_bigdata/controller/stu/JupyterController.java index 8a5ded3..d72bca1 100644 --- a/src/main/java/com/sztzjy/financial_bigdata/controller/stu/JupyterController.java +++ b/src/main/java/com/sztzjy/financial_bigdata/controller/stu/JupyterController.java @@ -12,8 +12,10 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.codec.binary.Base64; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; +import org.springframework.transaction.annotation.Transactional; import org.springframework.util.Assert; import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; import java.io.*; @@ -276,6 +278,29 @@ public class JupyterController { + @PostMapping("uploadFile") + @ApiOperation("新增数据集") //todo 案例目录和案例正文通过前端传路径过来 ,这里只存url + @AnonymousAccess + ResultEntity uploadFile(List dataFile) { + + + String filepath = "/usr/local/tianzeProject/financial_bigdata_total/py/dataResource/"; + + + //设置数据文件 + if (dataFile != null && !dataFile.isEmpty()) { + + for (MultipartFile file : dataFile) { + + iFileUtil.uploadResource(file,filepath); + + } + + + } + return new ResultEntity<>(HttpStatus.OK,"上传成功"); + } + diff --git a/src/main/java/com/sztzjy/financial_bigdata/util/file/IFileUtil.java b/src/main/java/com/sztzjy/financial_bigdata/util/file/IFileUtil.java index ff83ae9..cd871f5 100644 --- a/src/main/java/com/sztzjy/financial_bigdata/util/file/IFileUtil.java +++ b/src/main/java/com/sztzjy/financial_bigdata/util/file/IFileUtil.java @@ -88,4 +88,5 @@ public interface IFileUtil { void downloadByOtherFile(HttpServletResponse response,String name,String filePath); + void uploadResource(MultipartFile file,String filePath); } diff --git a/src/main/java/com/sztzjy/financial_bigdata/util/file/LocalFileUtil.java b/src/main/java/com/sztzjy/financial_bigdata/util/file/LocalFileUtil.java index 28555c0..7e1a51b 100644 --- a/src/main/java/com/sztzjy/financial_bigdata/util/file/LocalFileUtil.java +++ b/src/main/java/com/sztzjy/financial_bigdata/util/file/LocalFileUtil.java @@ -185,7 +185,6 @@ public class LocalFileUtil implements IFileUtil{ String substring = name.substring(0, name.lastIndexOf(".")); - InputStream fis = null; try { response.setContentType("application/octet-stream"); @@ -207,4 +206,27 @@ public class LocalFileUtil implements IFileUtil{ } } } + + @Override + public void uploadResource(MultipartFile file, String relativePath) { + Assert.isTrue(!file.isEmpty(), "文件不存在"); + + try { + // 创建目录如果不存在 + File directory = new File(relativePath); + if (!directory.exists()) { + directory.mkdirs(); + } + + // 设置目标文件路径 + String fileName = file.getOriginalFilename(); + File destFile = new File(relativePath + File.separator + fileName); + + file.transferTo(destFile); + } catch (FileNotFoundException e) { + throw new IllegalArgumentException("上传文件失败,FileNotFound错误", e); + } catch (IOException e) { + throw new IllegalArgumentException("上传文件失败,IO错误", e); + } +} }