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列。

相关推荐
m0_748230944 小时前
Rust赋能前端: 纯血前端将 Table 导出 Excel
前端·rust·excel
Swift社区5 小时前
Excel 列名称转换问题 Swift 解答
开发语言·excel·swift
neeef_se6 小时前
Vue中使用a标签下载静态资源文件(比如excel、pdf等),纯前端操作
前端·vue.js·excel
℘团子এ6 小时前
js和html中,将Excel文件渲染在页面上
javascript·html·excel
菠萝蚊鸭15 小时前
Dhatim FastExcel 读写 Excel 文件
java·excel·fastexcel
一只小灿灿15 小时前
VB.NET在 Excel 二次开发中的全面应用
.net·excel
是小崔啊18 小时前
开源轮子 - EasyExcel01(核心api)
java·开发语言·开源·excel·阿里巴巴
Excel_easy18 小时前
批量识别工作表中二维码信息-Excel易用宝
excel·wps
m0_748255261 天前
easyExcel导出大数据量EXCEL文件,前端实现进度条或者遮罩层
前端·excel
小张认为的测试1 天前
Linux性能监控命令_nmon 安装与使用以及生成分析Excel图表
linux·服务器·测试工具·自动化·php·excel·压力测试