EasyPoi、EasyExcel

对比:

相同点:

easypoi和easyexcel都是基于apache poi进行二次开发的。底层都是依赖的 apache poi。

两者都是可以基于实体类的注解配置来控制导入导出

不同点:

EasyExcel是一款阿里开源的Excel导入导出工具,具有处理快速、占用内存小、使用方便的特点

功能方面:

easypoi 功能更加强大,对定制化的导出支持非常的丰富。

easyexcel对于实现枚举类型到字符串的转换,需要自定义转换器;对于一些嵌套的一对多对象的导出,需要自定义合并策略。

性能方面

easypoi的解析方式是dom解析,把结果一次都读入内存操作,这样的操作平时是不会有问题的,但是并发量上来的时候就会出现OOM

easyexcel运用的SAX的解析方式,数据量比较大的时候,easyexcel 速度有着明显优势

代码方面:

easypoi导出:最终是生成了一个 Workbook 对象,由我们自己来输出流下载,较为灵活

easyexcel导出:直接提供了导出+下载的方法,较为方便

建议:

依据当前项目需求,如果并发量不大、数据量也不大,但是需要导出 excel 的文件样式千差万别,那么推荐用 easypoi;反之,使用 easyexcel 。

原文链接:yhttp://t.csdnimg.cn/rEcbX


easyexcel(2.2.10)
详细使用参考

1.如果excel数据量小,可选择easypoi,扩展功能比较丰富,如支持注解数据校验等功能;数据量大未使用sax读取excel,容易oom。

2.如果excel数据量大,建议使用easyexcel。

3.hutool速度也快,但是RowHandler不支持泛型;数据量大未使用sax读取excel,容易oom。

原文链接:https://blog.csdn.net/qq_15596257/article/details/119750538

相关推荐
EterNity_TiMe_28 分钟前
【Linux基础IO】深入Linux文件描述符与重定向:解锁高效IO操作的秘密
linux·运维·服务器·学习·性能优化·学习方法
好家伙VCC1 小时前
STM32与51单片机的区别:是否应该直接学习STM32?
stm32·学习·51单片机
秋秋秋叶1 小时前
Python学习——【3.1】函数
python·学习
攸攸太上2 小时前
Docker学习
java·网络·学习·docker·容器
Ylucius3 小时前
JavaScript 与 Java 的继承有何区别?-----原型继承,单继承有何联系?
java·开发语言·前端·javascript·后端·学习
哦豁灬3 小时前
NCNN 学习(1)-编译与算子注册
深度学习·学习·ncnn
问道飞鱼3 小时前
每日学习一个数据结构-布隆过滤器Bloom Filter
数据结构·学习·哈希算法
沐曦可期3 小时前
Git使用手册
git·学习
老薛爱吃大西瓜3 小时前
DAY15:链表实现学生信息管理系统
c语言·数据结构·学习·链表
guoguoqiang.3 小时前
我与Linux的爱恋:命令行参数|环境变量
linux·运维·服务器·c语言·学习