springboot实现单个文件上传(图片 文档 )
在pom.xml里引入web类库

创建upload.html,实现文件的选择与上传
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>上传文件到服务器</title>
</head>
<body>
<form action="/upload" method="post" enctype="multipart/form-data">
<input type="file" name="uploadFile" value="请选择文件">
<input type="submit" value="上传">
</form>
</body>
</html>

uploadFile.transferTo(fileServer); 把上传的文件存储到服务器
创建UploadController类,用来接收上传的文件
@RestController
public class UploadImgaesUtil {
@PostMapping("/upload")
public String upload(MultipartFile uploadFile, HttpServletRequest request) {
/*
定义文件的存储路径,如下,是在linux和mac上定义的文件路径
/private/var/folders/8x/4zvnbqmj1w33cqmzrpygzbth0000gn/T/tomcat-docbase.5206733816001100271.8080/uploadFile
*/
String realPath = request.getSession().getServletContext().getRealPath("/uploadFile/");
File dir = new File(realPath);
if (!dir.isDirectory()) {//文件目录不存在,就创建一个
dir.mkdirs();
}
try {
String filename = uploadFile.getOriginalFilename();
//服务端保存的文件对象
File fileServer = new File(dir, filename);
System.out.println("file文件真实路径:" + fileServer.getAbsolutePath());
//2,实现上传
uploadFile.transferTo(fileServer);
String filePath = request.getScheme() + "://" +
request.getServerName() + ":"
+ request.getServerPort()
+ "/uploadFile/" + filename;
//3,返回可供访问的网络路径
System.out.println(filePath);
return filePath;
} catch (IOException e) {
e.printStackTrace();
}
return "上传失败";
}
验证
1

2

3

4


浙公网安备 33010602011771号