文件上传
1 @PostMapping("/upload") 2 public Result upload(String username, Integer age, MultipartFile file) throws IOException { 3 log.info("接受参数:{},{},{}", username, age, file); 4 // 获取原始文件名 5 String originalFilename = file.getOriginalFilename(); 6 // 新的文件名 7 String extension = originalFilename.substring(originalFilename.lastIndexOf(".")); 8 String newFileName = UUID.randomUUID() + extension; 9 // 保存文件 10 file.transferTo(new File("D:/Project/FileUploadDemo/" + newFileName)); 11 return Result.success(); 12 }
1 <!-- 文件上传三要素:表单 method="post" enctype="multipart/form-data" 一个type="file"的上传框 --> 2 <form action="/upload" method="post" enctype="multipart/form-data"> 3 姓名:<input type="text" name="username"><br> 4 年龄:<input type="text" name="age"><br> 5 头像:<input type="file" name="file"><br> 6 <input type="submit" value="提交"> 7 </form>
服务器保存文件的问题:
1 浏览器无法直接访问
2 磁盘容量有限
3 服务器磁盘损坏
解决方案:
1 借助 FastDFS 或 MinIO 自己搭建文件服务器
2 使用云服务器 阿里云OSS

浙公网安备 33010602011771号