springboot文件上传

1.前端,resources下的static新建file.html页面

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="/upload/image" method="post" enctype="multipart/form-data">
2 <input type="file" name="file" /><p>
3 <input type="submit" value="提交" /><p>
4 <input type="reset" value="清空" /><p>
5 </form>
</body>
</html>

2.springboot配置

server:
port: 8090
spring:
servlet:
multipart:
max-file-size: 1MB

3.新建controller

/**
* 在上传文件过程中,我们需要对上传的内容进行校验:
*
* 校验文件大小
* 校验文件的媒体类型
* 校验文件的内容
*/
@RestController
public class FileController {
private static final List<String> CONTENT_TYPES = Arrays.asList("image/jpg","image/jpeg", "image/png");
@PostMapping("/upload/image")
public String uploadFile(@RequestParam("file")MultipartFile file) throws IOException {
String originalFilename = file.getOriginalFilename();
String type = file.getContentType();
System.out.println(type);
if (!CONTENT_TYPES.contains(type)){
return "图片格式不正确";
}
if (ImageIO.read(file.getInputStream())==null){
return "图片内容不能为空";
}
String f = "C:\\Download\\"+ UUID.randomUUID()+originalFilename.substring(originalFilename.lastIndexOf("."));
file.transferTo(new File(f));
return "上传成功";
}
}


posted @ 2020-07-29 20:56  z街角的风铃y  阅读(153)  评论(0)    收藏  举报