设为首页 加入收藏

TOP

ArrayList/MySQL数据批量写入Excel表格(二)
2023-09-23 15:44:34 】 浏览:242
Tags:ArrayList/MySQL Excel 表格
taList.size() % sizeLimit > 0 ? 1 : 0); // 输出流 OutputStream outputStream = null; try { // 以字节流的形式输出响应正文 outputStream = new FileOutputStream(outFilePath); try (ExcelWriter excelWriter = EasyExcel.write(outputStream, bean).build()) { // 中间list调用写入 List<?> partList = null; WriteSheet writeSheet =null; for (int i = 0; i < num; i++) { // 每次写入都要创建WriteSheet, 这里注意必须指定sheetNo, 并且sheetName必须不一样 writeSheet = EasyExcel.writerSheet(i, sheetName + (i + 1)).build(); // 截取批次长度的list partList = sizeLimitDataList.subList(0, sizeLimit); // 分批业务逻辑处理- 打印替代 excelWriter.write(partList, writeSheet); // 去除已经处理的部分 (Arrays.asList()方式生成的数据不能进行此修改操作,会报错) partList.clear(); } // 获取最后一次截取后的剩余列表数据 if (!sizeLimitDataList.isEmpty()) { // 业务逻辑数据处理 excelWriter.write(sizeLimitDataList, writeSheet); } } } catch (IOException ex) { throw new RuntimeException(ex); } finally { if (outputStream != null) { try { outputStream.close(); } catch (IOException ex) { throw new RuntimeException(ex); } } } } public static void main (String[]args){ WriteDataBean writeDataBean = new WriteDataBean(); writeDataBean.setA("a"); writeDataBean.setB("b"); WriteDataBean writeDataBean1 = new WriteDataBean(); writeDataBean1.setA("ad"); writeDataBean1.setB("bd"); objects.add(writeDataBean1); objects.add(writeDataBean); writeMaxDataExcel(WriteDataBean.class, "D://cdc.xlsx", "test", objects, 1); writeMinDataExcel(WriteDataBean.class, "D://cddc.xlsx", "test", objects); } }

  

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇再聊Java Stream的一些实战技能与.. 下一篇61基于java的学生考勤管理系统设..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目