后台接收前端的文件对象-MultipartFile
方式一:
后端代码:
@RequestMapping(value="/file/reciveFile",method=RequestMethod.POST) public Result reciveFile(MultipartFile file) throws IOException { //获取文件名 file.getName(); //获取输入流 file.getInputStream(); //获取长度 file.getInputStream().available();
yml文件配置请求大小:
spring: servlet: multipart: max-file-size: 100MB max-request-size: 100MB
前端测试:postman举例------请求类型 form-data 参数类型 file
方式二: DiskFileItemFactory
@RequestMapping(value="/file/reciveFile2",method=RequestMethod.POST) public Result reciveFile2(HttpServletRequest request) throws IOException, FileUploadException { DiskFileItemFactory factory=new DiskFileItemFactory(); ServletFileUpload upload=new ServletFileUpload(factory); List<FileItem> list=upload.parseRequest(request); for(FileItem item:list){ System.out.println(item.getFieldName()); } return null; }
配置yml文件: 主要是enable 关闭默认的
spring: servlet: multipart: max-file-size: 100MB max-request-size: 100MB enabled: false
postman验证: 这里文件参数可以写不同的变量名
备注:
两种方式不兼容,项目中只能运用一种。