From 3e1fc4ac19afe20fc9f3a7dfbc9581f958a02b79 Mon Sep 17 00:00:00 2001 From: lxyer <237809796@qq.com> Date: Fri, 10 May 2019 15:11:06 +0800 Subject: [PATCH] . --- src/main/java/net/tccn/base/ExcelKit.java | 9 ++++----- src/main/java/net/tccn/dbq/DbExecutors.java | 5 ++++- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/main/java/net/tccn/base/ExcelKit.java b/src/main/java/net/tccn/base/ExcelKit.java index 8d925c8..30d1b0c 100644 --- a/src/main/java/net/tccn/base/ExcelKit.java +++ b/src/main/java/net/tccn/base/ExcelKit.java @@ -4,6 +4,7 @@ import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.poifs.filesystem.OfficeXmlFileException; import org.apache.poi.ss.formula.functions.T; import org.apache.poi.ss.usermodel.*; +import org.apache.poi.xssf.streaming.SXSSFWorkbook; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import java.io.File; @@ -45,7 +46,7 @@ public class ExcelKit { //map:data,sheetName,hds,hdNames, public static Workbook exportExcels(List> list) throws Exception { - Workbook wb = new XSSFWorkbook(); + Workbook wb = new SXSSFWorkbook(); for (int i = 0; i < list.size(); i++) { Map map = list.get(i); Sheet sheet = wb.createSheet(); @@ -59,8 +60,6 @@ public class ExcelKit { nCell.setCellValue(hdNames[j]); } - //写入每一行数据---一条记录就是一行数据 - @SuppressWarnings("unchecked") List data = (List) map.get("data"); String[] hds = (String[]) map.get("hds"); dataToSheet(sheet, data, hds, 1); @@ -107,7 +106,7 @@ public class ExcelKit { */ public static Workbook exportExcel(List list, String[] hdNames, String[] hds) throws Exception { - Workbook wb = new XSSFWorkbook(); + Workbook wb = new SXSSFWorkbook(); Sheet sheet = wb.createSheet(); //写入表头---Excel的第一行数据 Row nRow = sheet.createRow(0); @@ -382,7 +381,7 @@ public class ExcelKit { try { wk = new HSSFWorkbook(fis);//if excel version 2007+ will throws OfficeXmlFileException } catch (OfficeXmlFileException e) { - wk = new XSSFWorkbook(fis); + wk = new SXSSFWorkbook(new XSSFWorkbook(fis)); } finally { if (fis != null) { try { diff --git a/src/main/java/net/tccn/dbq/DbExecutors.java b/src/main/java/net/tccn/dbq/DbExecutors.java index ff849d5..c8b5f1f 100644 --- a/src/main/java/net/tccn/dbq/DbExecutors.java +++ b/src/main/java/net/tccn/dbq/DbExecutors.java @@ -32,6 +32,9 @@ public class DbExecutors { CompletableFuture countFuture = CompletableFuture.supplyAsync(() -> dbKit.queryColumn(sqls[0], int.class)); CompletableFuture> listFuture = CompletableFuture.supplyAsync(() -> dbKit.findList(sqls[1], Map.class)); - return PageBean.by(listFuture.get(), countFuture.get()); + List rows = listFuture.get(); + Integer total = countFuture.get(); + + return PageBean.by(rows, total); } }