@PostMapping("/import") public Result imp(MultipartFile file) throws Exception { InputStream inputStream = file.getInputStream(); ExcelReader reader = ExcelUtil.getReader(inputStream); // 方式1:(推荐) 通过 javabean的方式读取Excel内的对象,但是要求表头必须是英文,跟javabean的属性要对应起来 // List<User> list = reader.readAll(User.class); // 方式2:忽略表头的中文,直接读取表的内容 List<List<Object>> list = reader.read(1); List<User> users = CollUtil.newArrayList(); for (List<Object> row : list) { User user = new User(); user.setUsername(row.get(0).toString()); user.setPassword(row.get(1).toString()); user.setNickname(row.get(2).toString()); user.setEmail(row.get(3).toString()); user.setPhone(row.get(4).toString()); user.setAddress(row.get(5).toString()); user.setAvatarUrl(row.get(6).toString()); users.add(user); } userService.saveBatch(users); return Result.success(true); }
时间: 2023-06-23 20:10:13 浏览: 107
multipartfile转file.txt
这段代码是一个使用Spring框架实现的Excel文件导入功能的后端接口,接收一个MultipartFile类型的文件参数。首先获取文件的输入流,然后使用ExcelUtil工具类获取ExcelReader对象,通过ExcelReader对象读取Excel文件的内容并将其存储在List<List<Object>>类型的数据结构中。接着将读取到的数据转换成User对象并存储在List<User>类型的数据结构中,最后通过userService的saveBatch方法将用户数据批量保存到数据库中。整个接口的返回结果是一个Result类型的对象,其中包含了保存成功与否的信息。
阅读全文