前端:
<form action="/upload" method="post" enctype="multipart/form-data"> 头像: <input type="file" name="image"><br> <input type="submit" value="提交"></form>
后端:
String getOriginalFilename(); //获取原始文件名
void transferTo(File dest); //将接收的文件转存到磁盘文件中
long getSize(); //获取文件的大小,单位:字节
byte[] getBytes(); //获取文件内容的字节数组
InputStream getInputStream(); //获取接收到的文件内容的输入流
本地文件上传代码:
- package com.jinhei.controller;
-
- import com.jinhei.pojp.Result;
- import io.swagger.v3.oas.annotations.Operation;
- import io.swagger.v3.oas.annotations.tags.Tag;
- import org.springframework.web.bind.annotation.PostMapping;
- import org.springframework.web.bind.annotation.RestController;
- import org.springframework.web.multipart.MultipartFile;
-
- import java.io.File;
- import java.util.UUID;
-
- @RestController
- @Tag(name = "附件上传")
- public class FileUploadController {
- @Operation(summary = "上传接口", description = "上传")
- @PostMapping("/upload")
- public Result<String> upload(MultipartFile file) throws Exception {
- // 获取文件原始的名字
- String originalFilename = file.getOriginalFilename();
- //保证文件的名字是唯一的,从而防止文件覆盖
- String filename = null;
- if (originalFilename != null) {
- filename = UUID.randomUUID().toString() + originalFilename.substring(originalFilename.lastIndexOf("."));
- }
- //把文件的内容存储到本地磁盘上
- file.transferTo(new File("F:\\xuexi\\file\"+filename));
- // String url = AliOssUtil.uploadFile(filename,file.getInputStream());
- return Result.success("URL上传成功");
- }
- }
复制代码
SpringBoot3附件文件上传阿里云OSS储存方法教程附带源码
https://www.zidiu.com/thread-102-1-1.html
|