采用
spring: servlet: multipart: max-file-size: 100MB max-request-size: 100MB # 文件上传配置 files: upload: # path: D:/代码/小白做毕设2022/files/ # 文件上传目标路径 path: D:/projectDemo/Qiqivideo/Qiqi/QiqiSource/Video # 文件上传允许的类型 allowTypes: - image/jpeg - image/png - image/jpg - image/gif - text/html - text/css - application/msword - application/pdf - application/vnd.ms-excel server: port: 9002
package com.example.test; import jakarta.servlet.http.HttpServletResponse; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.io.*; import java.net.URLEncoder; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; @CrossOrigin @RestController @RequestMapping("/basics") public class BasicsController { private static final String BASE_DIR = "D:\\projectDemo\\Qiqivideo\\Qiqi\\QiqiSource\\Video\\"; @PostMapping("/file/upload") public ResponseEntity<String> uploadFile(@RequestParam MultipartFile file) { // ... File upload logic ... if (file.isEmpty()) { return new ResponseEntity<>("文件不能为空", HttpStatus.BAD_REQUEST); } try { byte[] bytes = file.getBytes(); Path path = Paths.get(BASE_DIR + File.separator + file.getOriginalFilename()); Files.write(path, bytes); return new ResponseEntity<>("文件上传成功", HttpStatus.OK); } catch (IOException e) { e.printStackTrace(); return new ResponseEntity<>("文件上传失败", HttpStatus.INTERNAL_SERVER_ERROR); } }
<!-- 上传 -->
<el-upload
drag
action="http://localhost:9002/basics/file/upload"
:on-success="handleUploadSuccess"
:on-error="handleUploadError"
>
<i class="el-icon-upload"></i>
<div class="el-upload__text">拖拽文件到此处上传</div>
</el-upload>
<!-- 上传 end-->
methods:{
handleUploadSuccess(response, file) {
this.$message.success('文件上传成功');
},
handleUploadError(err, file) {
this.$message.error('文件上传失败');
},
方式完成