上传文件出现的错误,对于File类的方法了解不清,导致路径找不到
@RequestMapping(value = "/upload.do",method = RequestMethod.POST) public String upload(@RequestParam(value = "file",required = false)MultipartFile file, HttpServletRequest request){ String path=request.getSession().getServletContext().getRealPath("statics"+File.separator+"uploadFiles"); if (!file.isEmpty()){ String oldName = file.getOriginalFilename(); String suffix = FilenameUtils.getExtension(oldName); System.out.println(">>>>>>>>>>>>>>>>>>>"+suffix); if (suffix.equalsIgnoreCase("jpg")|| suffix.equalsIgnoreCase("jpeg")|| suffix.equalsIgnoreCase("png")|| suffix.equalsIgnoreCase("pneg")){ String newName=UUID.randomUUID().toString().replace("-","")+"."+suffix; System.out.println("新名字>>>>>>>>>>>>>>>>>>>>>"+newName); File tarFile =new File(path,newName); if (!tarFile.exists()){ tarFile.mkdirs(); } try { file.transferTo(tarFile); } catch (IOException e) { e.printStackTrace(); } String url=request.getContextPath()+"/statics/uploadfiles/"+newName; return "redirect:/"; }else { return "redirect:/"; } }else { return "redirect:/"; } }
其中tarFile.mkdirs()与tarFile.mkdir();方法用错,由于缺的文件夹太多,所以只能用前面个方法,后者创单个文件夹,导致错误