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; Listlist = 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条)