java读取excel模板数据并且插入到数据库
java读取excel模板数据并且插入到数据库
读取模板excel数据并且插入到数据库中 public Object readSchoolExcel(MultipartFile file, UserInfo user) throws IOException { ExcelReader excelReader = null; InputStream inputStream = null; String guid = IdUtil.simpleUUID(); try { inputStream =file.getInputStream() ; excelReader = EasyExcel.read(inputStream).build(); ExcelListener sheetListener = new ExcelListener(); //获取sheet对象 ---学位出版物信息 ReadSheet readSheet1 = EasyExcel.readSheet(0).head(SchoolExcelPublicationSheetDTO.class).registerReadListener(sheetListener).build(); excelReader.read(readSheet1); int sheet1Size = sheetListener.getData().size(); for (int i = 0; i < sheet1Size; i++) { SchoolExcelPublicationSheetDTO sheet1 = new SchoolExcelPublicationSheetDTO(); var dto=((SchoolExcelPublicationSheetDTO) sheetListener.getData().get(i)); ///映射到实体对象 sheet1= ObjectMapper.map(dto,SchoolExcelPublicationSheetDTO.class); sheet1.setPici(guid); sheet1.setUpdateUser(user.getName()); sheet1.setUpdateUserId(user.getUserId()); sheet1.setUpdateTime(new Date()); sheet1.setDeleted(false); publicationSheetService.save(sheet1); } } catch (Exception e) { e.printStackTrace(); } finally { inputStream.close(); if (excelReader != null) { excelReader.finish(); } } calculateService.tempExcelToTable(guid,"学位"); return null; } /// excel解析 public class ExcelListener extends AnalysisEventListener<Object> { private List<Object> data = new ArrayList<>(); @Override public void invoke(Object o, AnalysisContext analysisContext) { data.add(o); } @Override public void doAfterAllAnalysed(AnalysisContext analysisContext) { } public List<Object> getData() { return data; } public void setData(List<Object> data) { this.data = data; } }