CSDN话题挑战赛第2期
参赛话题:Java技术分享
引言
SpringBoot整合 Apache POI 完成复杂表头数据的导出
为什么要使用这个技术?
1,先来说说根据自己个人实际应用介绍这项技术的优缺点
优点:
- 能在特定环境下根据实际业务需求定制化完成复杂表头数据的导出。
- 在则就是有个特别详细的官网,大部分的业务场景都可以在那官网上可以看到,有详细说明并且也有对应代码
- 该技术可以操作任何版本的Excel
缺点:
- 当然缺点也很突出,前面在优点中提到过的是根据业务定制化开发,所以代码的复用率不高,
- 当然除此之外就是对Spring Boot的版本有严格要求,否则很有可能出现版本的不兼容,本人遇到过,那是个残酷修复查找过程!这里就不说了,总之要留心这个问题
2,掌握该项技术,能快速完成任何场景下的复制表头的数据导出。
技术案例,实战分享
//第一行 int rowNum = 0; HSSFRow row1 = sheet.createRow(rowNum++); row1.setHeight((short) 800); HSSFCell cell = row1.createCell(0); cell.setCellValue("****公司" + date + "销售日报表"); //合并单元格 sheet.addMergedRegion(new CellRangeAddress(0, 0, 0, 9)); cell.setCellStyle(style); //第二行 HSSFRow row2 = sheet.createRow(rowNum++); HSSFCell cell2 = row2.createCell(0); cell2.setCellValue("制表单位:"); sheet.addMergedRegion(new CellRangeAddress(1, 1, 0, 9)); //第三行 HSSFRow row3 = sheet.createRow(rowNum++); String[] cellFirst = {"矿别", "煤种", "最新价格(元/吨)", "数量(吨)", " ", "收入(元)", " ", "车数(车)", " ", "备注"}; for (int i = 0; i < cellFirst.length; i++) { row3.setHeight((short) 450); HSSFCell cell3 = row3.createCell(i); cell3.setCellValue(cellFirst[i]); cell3.setCellStyle(style); } //矿别合并 sheet.addMergedRegion(new CellRangeAddress(2, 3, 0, 0)); //煤种合并 sheet.addMergedRegion(new CellRangeAddress(2, 3, 1, 1)); //最新价格(元/吨)合并 sheet.addMergedRegion(new CellRangeAddress(2, 3, 2, 2)); //数量(吨)合并 sheet.addMergedRegion(new CellRangeAddress(2, 2, 3, 4)); //收入(元)合并 sheet.addMergedRegion(new CellRangeAddress(2, 2, 5, 6)); //车数(车)合并 sheet.addMergedRegion(new CellRangeAddress(2, 2, 7, 8)); //备注合并 sheet.addMergedRegion(new CellRangeAddress(2, 3, 9, 9)); //第四行 HSSFRow row4 = sheet.createRow(rowNum++); String[] cellFirst4 = {" ", " ", " ", "当日", "月累", "当日", "月累", "当日", "月累",}; for (int i = 3; i < cellFirst4.length; i++) { row4.setHeight((short) 450); HSSFCell cell4 = row4.createCell(i); cell4.setCellValue(cellFirst4[i]); cell4.setCellStyle(style); }
难点分析
不同的业务需求难度各不相同,需要从不同的维度去统计数据,使用该技术将数据无错误的填入表格。
技术小结
学会这项技术,基本就没有难得复杂表格啦。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/105082.html