From c813bce17f094b7c37a61a7305c7eb80c07c0e20 Mon Sep 17 00:00:00 2001 From: Xudong Date: Sun, 24 Apr 2022 17:46:37 +0800 Subject: [PATCH] ex1-1 done --- .../controller/ObjectsController.java | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/main/java/cn/edu/zjvtit/distributedobjectstorage/controller/ObjectsController.java b/src/main/java/cn/edu/zjvtit/distributedobjectstorage/controller/ObjectsController.java index 40258de..0320d2a 100644 --- a/src/main/java/cn/edu/zjvtit/distributedobjectstorage/controller/ObjectsController.java +++ b/src/main/java/cn/edu/zjvtit/distributedobjectstorage/controller/ObjectsController.java @@ -17,7 +17,10 @@ public class ObjectsController { @PutMapping("/objects") public String putObject(@RequestParam(value = "file", required = true) MultipartFile file, HttpServletResponse response) throws IOException { - // 上传文件 + byte[] bytes = file.getBytes(); + File fileToSave = new File("./uploads/"+file.getOriginalFilename()); + FileCopyUtils.copy(bytes, fileToSave); + response.setStatus(200); return new Result( "success","10000").toString(); } @@ -38,7 +41,13 @@ public class ObjectsController { response.setHeader("Content-Disposition", "attachment;filename=" + filename ); try(BufferedInputStream bis = new BufferedInputStream(Files.newInputStream(file.toPath()))) { - // 下载文件 + byte[] buff = new byte[1024]; + OutputStream os = response.getOutputStream(); + int i = 0; + while ((i = bis.read(buff)) != -1) { + os.write(buff, 0, i); + os.flush(); + } } catch (IOException e) { return new Result("file not exists","10001").toString(); }