java使用ExcelExportUtil.exportBigExcel导出大文件(非分页)

网上看到很多使用这个方法处理的时候,大多使用的分页进行查询,但是当遇到特殊的产品需求,比如A类型数据,多条记录就显示多行,B类型的要求存在多条记录时,就进行汇总后只显示一条,这就导致无法使用分页进行数据查询,因为分页会发生数据遗漏,比如你500条每页,但有的结果在第2页,这就导致在处理的时候,数据遗漏。

不多废话了,直接上代码。

我尝试使用ExcelExportUtil.exportBigExcel来实现数据查询:

java 复制代码
File file = createFile();//生成本地文件
ExportParams params = new ExportParams();
params.setSheetName("aaaa");
Workbook workbook=null;
FileOutputStream fos = new FileOutputStream(file);

IExcelExportServer iExcelExportServer = new IExcelExportServer() {
	//自动会被循环调用,i的初始值为1
    @Override
    public List<Object> selectListForExcelExport(Object idObj, int i) {
        List<String> idList=(List)idObj;
        if(i>idList.size()){
            return null;
        }
        String id=idList.get(i-1);
        List<Object> listObj = new ArrayList<Object>();
        List<CCCC> listDateByid = ccccMapper.selectList("",id);
        return listObj;
    }
};

workbook = ExcelExportUtil.exportBigExcel(params, CCC.class, iExcelExportServer, idList);
workbook.write(fos);
相关推荐
文丑颜不良啊1 小时前
LeetCode2221~2240题目解析
java·leetcode
秋饼1 小时前
Computer Use Agent Java 落地实战:感知-行动循环、执行器与安全围栏生产级实现
java·ai·技术分享·后端开发
冻柠檬飞冰走茶3 小时前
字母移动游戏题解:贪心求最长可保留连续子串(附 C 实现)
c语言·开发语言·数据结构·算法·动态规划
文丑颜不良啊3 小时前
LeetCode2161~2180题目解析
java·leetcode
FRing033 小时前
vue2干货总结7(自定义指令、插槽、单页应用程序、路由的使用(VueRouter))
开发语言·前端·vue.js·vue2
雪落漂泊3 小时前
C++算法 二分查找篇(上)
开发语言·c++·算法
波力海苔夹心脆6754 小时前
C# WPF 资源字典详解:ResourceDictionary、MergedDictionaries 与自定义控件案例
开发语言·c#·wpf·入门教程·resource·资源字典
不会算法的笨小孩5 小时前
异常的使用以及会出现的问题
开发语言·c++·c++11·异常
文丑颜不良啊5 小时前
LeetCode2141~2160题目解析
java·leetcode
LabVIEW开发5 小时前
LabVIEW 连接板:28 个端子怎么排,优先级怎么定
java·算法·labview