设置上传的文件大小:
@Configuration
public class fileConfigure {
@Bean
public MultipartConfigElement multipartConfigElement(){
MultipartConfigFactory factory=new MultipartConfigFactory();
//单个文件的大小
factory.setMaxFileSize("200KB");
//设置总上传数据的大小
factory.setMaxRequestSize("1024000KB");
return factory.createMultipartConfig();
}
}
Controller:
@RestController
//@PropertySource({"classpath:application.properties"})
public class FileController {
// @Value("${web.upload-path}")
// private String filePath;
// @Autowired
// private ServiceSetting serviceSetting;
private String path="C:\\Users\\54701\\Desktop\\images";
@RequestMapping(value = "uploadfile")
public JsonData upload(@RequestParam("head_img") MultipartFile file, HttpServletRequest request){
String name=request.getParameter("name");
System.out.println("用户名:"+name);
//获取文件名
String fileName=file.getOriginalFilename();
System.out.println("上传的文件名为:"+fileName);
//获取文件的后缀名
String suffixName=fileName.substring(fileName.lastIndexOf("."));
System.out.println("上传的后缀名为:"+suffixName);
//文件上传后的路径
fileName= UUID.randomUUID()+suffixName;
//File dest=new File(serviceSetting.getName()+fileName);
File dest=new File(path+fileName);
try {
file.transferTo(dest);
return new JsonData(0,fileName,"上传成功");
}catch (IllegalStateException e){
e.printStackTrace();
}catch (IOException e){
e.printStackTrace();
}
return new JsonData(-1,"fail","上传失败");
}
}
HTML页面:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" http-equiv="content-type" content="text/html">
<title>图片上传</title>
</head>
<body>
<form enctype="multipart/form-data" method="post" action="/uploadfile">
文件:<input type="file" name="head_img"/>
姓名:<input type="text" name="name"/>
<input type="submit" value="上传"/>
</form>
</body>
</html>