上课加敲代码时间:400分钟
代码量:400行
博客数:1
学习记录:
学习了andorif当中的http请求,如何发送以及接受,现在还有点问题,明天进行完善,然后还做了项目的一点内容,完成了文件导入到数据库
1 @PostMapping("/uploadMySql") 2 public String handleFileUpload(@RequestParam("file") MultipartFile file) { 3 if (!file.isEmpty()) { 4 try { 5 InputStream inputStream = file.getInputStream(); 6 7 // 根据文件扩展名创建对应的 Workbook 对象 8 Workbook workbook; 9 if (file.getOriginalFilename().endsWith(".xls")) { 10 workbook = new HSSFWorkbook(inputStream); 11 } else if (file.getOriginalFilename().endsWith(".xlsx")) { 12 workbook = new XSSFWorkbook(inputStream); 13 } else { 14 return "不支持的文件格式"; 15 } 16 17 // 获取第一个工作表 18 Sheet sheet = workbook.getSheetAt(0); 19 20 // 遍历工作表中的每一行 21 Iterator<Row> rowIterator = sheet.iterator(); 22 while (rowIterator.hasNext()) { 23 Row row = rowIterator.next(); 24 // 这里假设表格的第一行是标题,从第二行开始读取数据 25 if (row.getRowNum() == 0) { 26 continue; 27 } 28 // // 这里假设表格的第一列是ID,第二列是Name,你需要根据实际情况进行调整 29 // String userNumber= (String) row.getCell(0).getStringCellValue(); 30 // String userName = row.getCell(1).getStringCellValue(); 31 // String classID = row.getCell(2).getStringCellValue(); 32 // String studentClassId = userMapper.getStudentClassIdByClassName(classID); 33 // 34 //// 封装User类 35 // User user=new User(); 36 // userUUID = IdUtil.getUUID(); 37 // user.setUserId(userUUID); 38 // user.setSchoolId(1000L); 39 // user.setUserRole(2); 40 // user.setUserName(userName); 41 // user.setUserNumber(userNumber); 42 // user.setUserPassword(EncryptionUtil.md5WithSalt("12345")); 43 // user.setStudentClassId(studentClassId); 44 // userMapper.insertUserStudent(user); 45 // // 将数据插入数据库 46 // // 这里需要根据你的具体业务逻辑来插入数据库,下面的示例代码仅供参考 47 // // userDao.insertUser(id, name); 48 // System.out.println("插入数据:学号=" + userNumber + ", 姓名=" + userName); 49 50 // 这里假设表格的第一列是ID,第二列是Name,你需要根据实际情况进行调整 51 Cell cell0 = row.getCell(0); 52 String userNumber = ""; 53 if (cell0.getCellType() == CellType.NUMERIC) { 54 userNumber = String.valueOf((int) cell0.getNumericCellValue()); 55 } else if (cell0.getCellType() == CellType.STRING) { 56 userNumber = cell0.getStringCellValue(); 57 } 58 59 String userName = row.getCell(1).getStringCellValue(); 60 String classID = row.getCell(2).getStringCellValue(); 61 String studentClassId = userMapper.getStudentClassIdByClassName(classID); 62 63 // 封装User类 64 User user = new User(); 65 userUUID = IdUtil.getUUID(); 66 user.setUserId(userUUID); 67 user.setSchoolId(1000L); 68 user.setUserRole(2); 69 user.setUserName(userName); 70 user.setUserNumber(userNumber); 71 user.setUserPassword(EncryptionUtil.md5WithSalt("12345")); 72 user.setStudentClassId(studentClassId); 73 userMapper.insertUserStudent(user); 74 // 将数据插入数据库 75 // 这里需要根据你的具体业务逻辑来插入数据库,下面的示例代码仅供参考 76 // userDao.insertUser(id, name); 77 System.out.println("插入数据:学号=" + userNumber + ", 姓名=" + userName); 78 } 79 80 workbook.close(); 81 return "数据导入成功"; 82 } catch (IOException e) { 83 e.printStackTrace(); 84 return "文件读取失败"; 85 } 86 } else { 87 return "没有上传文件"; 88 } 89 }