multipart请求处理文件上传相关错误
multipart请求处理文件上传相关异常
使用Spring中 Commons FileUpload 实现文件上传 在 request 到 MultipartHttpServletRequest转型的时候会出现 转型异常 ClassCastException.
MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request
有效的解决办法之一:
CommonsMultipartResolver commonsMultipartResolver = new CommonsMultipartResolver(request .getSession().getServletContext()); commonsMultipartResolver.setDefaultEncoding("utf-8"); MultipartHttpServletRequest multipartRequest = commonsMultipartResolver.resolveMultipart(request);
可实现 request 到 MultipartHttpServletRequest 的转型。
拿到 MultipartFile后 转为 File:
//List<MultipartFile> imageFiles = multipartRequest.getFiles("uploadfile"); MultipartFile file = multipartRequest.getFile("uploadfile"); //MultipartFile 转 File String filename = file.getOriginalFilename(); File source = new File(filename.toString());//文件 try { file.transferTo(source); } catch (IllegalStateException e1) { System.out.println(e1.getMessage()); } catch (IOException e1) { System.out.println(e1.getMessage()); } String fileName = source.getName(); if (source.isFile()) { //得到File后的操作 //TODO }