public Resjson upload(@RequestParam("file") MultipartFile file) { Resjson res = new Resjson(); List<Map<String, Object>> list = new ArrayList<>(); try { InputStream inputStream = file.getInputStream(); if (file != null) { ExcelReader excelReader = ExcelUtil.getReader(inputStream); List<List<Object>> read = excelReader.read(1, excelReader.getRowCount()); for (List<Object> objects : read) { if (objects.get(0) != null && !objects.get(0).equals("")) { Map<String, Object> map = new HashMap<>(); map.put("id", IdUtil.fastUUID()); map.put("pcbh", objects.get(0).toString()); map.put("fbbh", objects.get(1).toString()); map.put("bh", objects.get(2).toString()); map.put("approveType", objects.get(3).toString()); map.put("rank", objects.get(4).toString()); map.put("result_type", objects.get(5).toString()); map.put("error_type", objects.get(6).toString()); map.put("pass_reason", objects.get(7).toString()); map.put("zbtzsTime", objects.get(8).toString()); map.put("company", objects.get(9).toString()); map.put("price", objects.get(10).toString()); map.put("fwPrice", objects.get(11).toString()); list.add(map); } } excelReader.close(); inputStream.close(); /* tLxsecondFirstPlanService.delRankByPcbh(list.get(0).get("pcbh").toString()); tLxsecondFirstPlanService.saveAllRank(list);*/ res.setCode(ResultCode.SUCCESS.getCode()); res.setMsg("上传成功!"); } } catch (Exception e) { res.setCode(ResultCode.BUS_EXCEPTION.getCode()); res.setMsg("上传异常!"); } return res; }解析一下代码
时间: 2024-02-14 20:31:32 浏览: 135
SpringMVC 上传文件 MultipartFile 转为 File的方法
这段代码是一个上传文件的方法。它接受一个MultipartFile类型的参数file,表示要上传的文件。方法首先创建了一个Resjson对象res和一个空的List<Map<String, Object>>对象list。
然后,它通过file.getInputStream()获取文件的输入流,并判断file不为null。接着,使用ExcelUtil工具类创建一个ExcelReader对象excelReader,并使用excelReader.read()方法读取文件中的数据,将每行数据封装为一个Map对象,然后将Map对象添加到list中。读取完成后,关闭excelReader和inputStream。
最后,将上传成功的状态码和消息设置到res对象中,并通过return语句返回res对象。
如果在文件读取或其他操作中发生异常,则会捕获异常并将错误状态码和消息设置到res对象中,然后返回res对象。
注释部分是一些被注释掉的代码,可能是用于删除和保存排名数据的操作。
阅读全文