SpringBoot中如何使用POI导入导出excel,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1.创建Excel文档HSSFWorkbook workboo
SpringBoot中如何使用POI导入导出excel,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
HSSFWorkbook workbook = new HSSFWorkbook();
//获取文档信息,并配置DocumentSummaryInfORMation dsi = workbook.getDocumentSummaryInformation();//文档类别dsi.setCateGory("员工信息");//设置文档管理员dsi.setManager("江南一点雨");//设置组织机构dsi.setCompany("XXX集团");//获取摘要信息并配置SummaryInformation si = workbook.getSummaryInformation();//设置文档主题si.setSubject("员工信息表");//设置文档标题si.setTitle("员工信息");//设置文档作者si.setAuthor("XXX集团");//设置文档备注si.setComments("备注信息暂无");
这些信息将显示在详细信息窗格中:
HSSFSheet sheet = workbook.createSheet("XXX集团员工信息表");
HSSFRow headerRow = sheet.createRow(0);
0表示第一行。
HSSFCell cell0 = headerRow.createCell(0);cell0.setCellValue("编号");
baos = new ByteArrayOutputStream();workbook.write(baos);
return new ResponseEntity<byte[]>(baos.toByteArray(), headers, httpstatus.CREATED);
核心步骤就这七个步骤,当然还有其他设置单元格数据格式、单元格背景、单元格宽度等,大家可以在源码中研究,这里就不赘述了。
数据导入主要涉及三个步骤 1.文件上传;2.Excel解析;3.数据插入。 第三步就比较简单了,我们这里重点来看看前两个步骤。
文件上传采用了ElementUI中的Upload控件,如下:
<el-upload:show-file-list="false"accept="application/vnd.ms-excel"action="/emp/basic/importEmp":on-success="fileUploadSuccess":on-error="fileUploadError" :disabled="fileUploadBtnText=='正在导入'":before-upload="beforeFileUpload" ><el-button size="mini" type="success" :loading="fileUploadBtnText=='正在导入'"><i class="fa fa-lg fa-level-up" ></i>{{fileUploadBtnText}}</el-button></el-upload>
正在上传时,文件上传控件不可用,上传成功或者失败之后才可用,上传过程中,上传按钮会有loading显示。
然后在springMVC中接收上传文件即可:
@RequestMapping(value = "/importEmp", method = RequestMethod.POST)public RespBean importEmp(MultipartFile file) { //...}
将上传到的MultipartFile转为输入流,然后交给POI去解析即可。可以分为如下四个步骤:
HSSFWorkbook workbook = new HSSFWorkbook(new POIFSFileSystem(file.getInputStream()));
int numberOfSheets = workbook.getNumberOfSheets();for (int i = 0; i < numberOfSheets; i++) { HSSFSheet sheet = workbook.getSheetAt(i); //...}
int physicalNumberOfRows = sheet.getPhysicalNumberOfRows();Employee employee;for (int j = 0; j < physicalNumberOfRows; j++) { if (j == 0) { continue;//标题行 } //...}
int physicalNumberOfCells = row.getPhysicalNumberOfCells();employee = new Employee();for (int k = 0; k < physicalNumberOfCells; k++) { HSSFCell cell = row.getCell(k); //...}
关于springBoot中如何使用POI导入导出Excel问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网精选频道了解更多相关知识。
--结束END--
本文标题: SpringBoot中如何使用POI导入导出Excel
本文链接: https://www.lsjlt.com/news/296117.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
2024-05-15
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0