Read-Easy Excel源码解析(一)

Read&Write-Easy Excel

当我们需要导入大Excel时候,用POI会内存溢出,这时候我们用EasyExcel来解决,它底层采用的是SAX(Simple Api for Xml)事件驱动,解析xml的方式来解析excel文件。

首先我们看他的read源码,通过Easy Excel工厂创建ExcelReaderBuilder

ExcelReaderBuilder构造方法里创建了ReadWorkbook

Head则是我们放接收实体的数据。

readLister在1.8后可以直接用PageReadListener

我们来看看pageReadListener

里面有个final修饰的consumer,这个有accept方法,batch_count=100,当读取的值太多,超过100的时候,则会直接消费,防止所有数据都读取到内存里,导致内存溢出。

后面doRead()里用excel分析器来分析excel的sheet

分析之后,则开始调用executor方法,执行xlsx来分析我们的excel。

excel写入则和读取前面的都类似,创建WriteWorkbook,之后运行doWrite(),这里在配合注解写入指定excel列。

相关推荐
fanchenxinok2 小时前
LIN矩阵Excel ⇄ LDF互转工具:打通设计数据与协议描述的关键桥梁
矩阵·excel·lin·ldf·excel和ldf互转
拆房老料4 小时前
多人协同编辑Excel时,筛选相互干扰怎么办?Onlyoffice中国版给出了与WPS一样的答案
编辑器·excel·开源软件·wps
Data-Miner4 小时前
Excel-Agent:你的专属 AI 数据分析助手
人工智能·数据分析·excel
xcLeigh4 小时前
告别 Excel 繁琐操作!Metabase让数据可视化触手可及
mysql·docker·信息可视化·excel·数据可视化·metabase·cpolar
葡萄城技术团队5 小时前
Excel 2025 年度回顾:文化、匠心与 Copilot 开启的计算新纪元
excel·copilot
tlwlmy5 小时前
python excel图片批量拼接导出
前端·python·excel
开开心心就好2 天前
绿色版PDF多功能工具,支持编辑转换
人工智能·windows·pdf·ocr·excel·语音识别·harmonyos
优选资源分享2 天前
资条生成器 V1.3 - 财务 HR 专属 Excel 工具
excel·实用工具
m0_502724952 天前
vue3在线预览excel表格
javascript·vue.js·excel
Java小王子呀2 天前
JAVA 导出Excel中添加下拉框用POI
java·excel