
1. 使用MultipartFile上传文件
1.1 介绍1.2 导包1.3 前端代码1.4 后端代码
1. 使用MultipartFile上传文件 1.1 介绍springmvc官方提供的一个比较完善的文件上传组件。下面是它的两个实现类:
org.springframework.web.multipart.commons.CommonsMultipartFile org.springframework.mock.web.MockMultipartFile1.2 导包
- 方式一(单独导包)
commons-io commons-io 2.6 commos-fileupload commos-fileupload1.4
- 导入web的 starter
1.3 前端代码org.springframework.boot spring-boot-starter-web
1)如果是form表单的话,在form标签中加入 enctype=“multipart/form-data”
2)上传多文件的话,需要加入multiple=“multiple”
3)上传文件夹的话,需要加入 webkitdirectory directory
1.4 后端代码
单文件上传
@RequestMapping("/uploadFile")//上传文件
public String UploadTheme(MultipartFile meFile,Model model){
if (meFile != null) {
System.out.println(meFile.getContentType());//在控制台打印文件的类型
System.out.println(meFile.getName());//返回文件的名称
System.out.println(meFile.getOriginalFilename());//返回文件的原文件名
try {
// 存放到一个位置
meFile.transferTo(new File("E:/temp/"+UUID.randomUUID()+meFile.getOriginalFilename()));
} catch (IllegalStateException e) {
e.printStackTrace();
model.addAttribute("msg", "上传失败");
return "/error.html";
} catch (IOException e) {
e.printStackTrace();
model.addAttribute("msg", "上传失败");
return "/error.html";
}
}
model.addAttribute("msg", "上传成功");
return "index";
}
多文件上传
@RequestMapping("/temp")
public String UploadFile(HttpServletRequest request,Model model){
CommonsMultipartResolver cResolver = new CommonsMultipartResolver();
if (cResolver.isMultipart(request)) {
MultipartHttpServletRequest httpservletrequest = (MultipartHttpServletRequest) request;
List list = httpservletrequest.getFiles("meFile");
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i).getOriginalFilename());
System.out.println(list.get(i).getContentType());
try {
list.get(i).transferTo(new File("D:/temp/"+UUID.randomUUID()+list.get(i).getOriginalFilename()));
} catch (IllegalStateException e) {
e.printStackTrace();
model.addAttribute("msg", "上传失败");
return "/error.html";
} catch (IOException e) {
e.printStackTrace();
model.addAttribute("msg", "上传失败");
return "/error.html";
}
}
}
model.addAttribute("msg", "上传成功");
return "index";
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)