java写excel性能_GcExcel:⽐ApachePOI速度更快、性能更
⾼
GrapeCity Documents for Excel(GcExcel) 是⼀款服务端 Java Excel 组件,产品架构轻量灵活,⽆需 Office 组件依赖,结合 纯前端表格控件 SpreadJS,在前端呈现 Excel 的数据可视化效果,实现类 Excel 的功能布局、数据分析和交互;在服务端实现批量创建、加载、编辑、导⼊/导出⼤型 Excel ⽂档,为您的应⽤程序提供 Excel 全栈、全场景解决⽅案。
GcExcel 对操作系统的⽀持
GcExcel 对云服务的⽀持
GcExcel +SpreadJS 实现Excel 全栈解决⽅案
与Java电⼦表格库Apache POI相⽐,GcExcel速度更快、性能更⾼、内存消耗更少。本⽂将详细⽐较Ap
ache POI与GcExcel的功能和性能,并向您推荐使⽤GcExcel的12条主要原因**。**
主要功能对⽐
GcExcel ⽀持 452 种 Excel 计算公式,⽽在 Apache POI 中,⽀持的公式数量仅有 157 - 280 种。
GcExcel ⽀持导出 PDF 格式,包括页⾯设置选项、PDF 安全选项和⽂档属性, ⽽ Apache POI 不⽀持导出 PDF。
GcExcel 内置了更多条件格式规则,如⾃定义图标集、⾼于平均值(AboveAverage)、发⽣⽇期、Top 10 和重复项,且这些条件格式与VSTO ⼀致。⽽ Apache POI 不⽀持条件格式,需要使⽤标记为内部⽤途的低级类。
GcExcel 的图表与 VSTO ⼀致,内置约 53 种图表类型,包括所有较新的图表,如箱形图(boxshicker)、漏⽃图(Funnel)、直⽅图(Histogram)、帕累托图(Pareto)、旭⽇图(Sunburst)和树图(Treemap),⽽ Apache POI 仅对条形图、柱形图、折线图、雷达图和散点图提供有限的⽀持。
GcExcel ⽀持迷你图和迷你图组,可在单元格中可视化数据,⽽ Apache POI 不⽀持迷你图。
GcExcel ⽀持对形状和图⽚进⾏剪切、复制和粘贴,⽽ Apache POI 不⽀持对形状或图⽚执⾏剪贴板操作。
GcExcel ⽀持应⽤⾼级过滤器,可对数字、⽂本、颜⾊、图标执⾏过滤,⽽ Apache POI 仅提供基本过滤。
8.
GcExcel ⽀持所有类型的⾏、列、值、多值、⾃定义、字体、颜⾊和图标排序,⽽ Apache POI 没有内置的排序⽀持。
GcExcel ⽀持带有表和透视表的切⽚器,提供内置切⽚器样式和⾃定义切⽚器样式,还提供了剪切、复制、筛选等操作,⽽ Apache POI 不⽀持切⽚器。
GcExcel ⽀持轻松地导⼊和导出 CSV,⽽ Apache POI 则不⽀持。
详细功能对⽐表
性能对⽐
我们通过⼀个测试项⽬,分别对⽐了 GcExcel 、Apache POI 和第三⽅组件的性能,结果如下所⽰:
获取和保存 100,000 * 30 个单元格的 double / string / date 值,GcExcel ⽤时不超过 0.2S ;Apache POI 为 18.7S 左右。
计算和保存 20,000 * 30 个单元格的公式,结果为:GcExcel ⽤时不超过 1S ;Apache POI 为 10S 左右。
3. 打开并保存⼀个 20.5MB 的 Excel ⽂件,该⽂件包含了⼤量数据、公式和单元格格式,结果如下:
GcExcel ⽤时不超过 4.9S ;Apache POI 则超过 10S
GcExcel 内存消耗为 72.1MB;Apache POI 为 3518.2MB
性能对⽐数据
性能对⽐图表
帕累托图制作步骤excel
测试机配置
Linux:Intel i7-8700 @ 3.2 GHz x 12 32GB RAM / Ubuntu 18.04.4
MacOS:Intel i5 @ 2.6 GHz / MacOS Mojave v10.14.6
Windows:Intel i7-6600U @ 2.60 GHz 2.81 GHz 16GB RAM / Windows 10 x64 v1803(内部版本17134.1304)测试版本
GrapeCity Documents for Excel 版本:3.1.0
Apache poi 版本:4.1.1
测试脚本
从 GitHub 下载测试项⽬
执⾏命令⾏(Mac): ./gradlew run --args="double" //参数可以是 double, string, date, formula, bigfile
执⾏命令⾏(Windows):gradlew run --args="double" //参数可以是 double, string, date, formula, bigfile
推荐您使⽤GcExcel的12条主要原因
1. 速度快、性能⾼
GCExcel 的平均速度是 Apache POI 的 7 倍,占⽤的内存仅为 1/7
2. 与 VSTO ⼀致的条件格式
包括图标集、⾼于平均值、发⽣⽇期、顶部/底部和重复/唯⼀值
3. ** 剪切、复制、粘贴图⽚和形状**
⽀持对图⽚或形状执⾏剪切、复制、粘贴等剪贴板操作
4. ⽀持数据切⽚器
内置切⽚器样式,可执⾏剪切、复制和筛选,⽀持⾃定义选项
5. ⽀持 452 种 Excel 公式
内置种类丰富的计算函数,⽀持⾃定义公式
6. ⽀持 53 种图表类型
包括所有较新的图表,如箱形图、漏⽃图、直⽅图、帕累托图等
7. ⽀持应⽤⾼级过滤器
包括对数字、⽂本、颜⾊、图标执⾏过滤
8. 导⼊和导出 CSV
GcExcel ⽀持导⼊和导出 CSV
9. ⽀持导出到 PDF
导出包括页⾯设置选项、安全选项和⽂档属性
10. ⽀持迷你图
GCExcel ⽀持迷你图和迷你图组,可在单元格中可视化数据
11. 多种排序⽀持
可按值、多值、字体颜⾊和图标排序,⽀持⾃定义排序
12. ⽀持渐变填充
对于使单元格、形状和图表系列“突出”时⾮常有⽤
通过上述数据,可见 GcExcel在处理⼤型Excel⽂档和复杂的计算公式时,⽐Apache POI和其他同类产品的速度更快,占⽤的内存也更少,与此同时,使⽤GcExcel,您还可以通过 Java、c# 代码完全控制电⼦表格,在不需要 Office 组件依赖的情况下,实现应⽤程序的组件化替代与云端架构升级。
如果您需要了解更多GcExcel的功能特性,以及如何与SpreadJS 配合使⽤,实现Excel 全栈、全场景解决⽅案,请前往 GrapeCity Documents 产品官⽹。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论