javascript
easypoi导出excel 效率_Spring Boot 入门(十二):报表导出,对比poi、jxl和esayExcel的效率...
關(guān)于poi、jxl和esayExcel的介紹自行百度。
jxl最多支持03版excel,所以單個(gè)sheet頁面最多只能導(dǎo)出65536條數(shù)據(jù)。
我直接將excel導(dǎo)入到瀏覽器并打開,以下統(tǒng)計(jì)導(dǎo)出時(shí)長(zhǎng)指將數(shù)據(jù)從數(shù)據(jù)庫查詢,并寫入到excel的過程。不包括打開excel所消耗的時(shí)間
為了接近真實(shí)場(chǎng)景,我建了一個(gè)表,一共有32個(gè)字段,其中2個(gè)id:一個(gè)自增長(zhǎng)、一個(gè)UUID,10個(gè)int型字段,10個(gè)String字段,10個(gè)datatime字段;導(dǎo)出的excel包含了32個(gè)字段
我每次導(dǎo)出一個(gè)excel后,直接將jvm的內(nèi)存清空,再進(jìn)行下一個(gè)excel的導(dǎo)出,保證導(dǎo)出excel不受其它線程的影響
我只是為了比較性能,所以沒有對(duì)excel的樣式進(jìn)行過多的渲染
poi方式,我使用的是刷新硬盤的方式,數(shù)據(jù)量大于設(shè)置的值,就將內(nèi)存中的數(shù)據(jù)刷新到硬盤,降低OOM的概率,同時(shí)也增加了導(dǎo)出效率
1.pom依賴
以下是poi、jxl和esayExcel的全部依賴
1
2
3 org.apache.poi
4 poi
5 ${poi.version}
6
7
8
9 org.apache.poi
10 poi-ooxml
11 ${poi.version}
12
13
14
15
16 net.sourceforge.jexcelapi
17 jxl
18 2.6.10
19
20
21
22
23 com.alibaba
24 easyexcel
25 1.1.2-beat1
26
27
2.頁面
由于是直接將excel通過response相應(yīng)的方式寫入到內(nèi)存,然后在瀏覽器端打開,所以頁面部分不能用ajax請(qǐng)求
1
2
3 poi導(dǎo)出
4 jxl導(dǎo)出
5 esayExcel導(dǎo)出
6
總結(jié)
以上是生活随笔為你收集整理的easypoi导出excel 效率_Spring Boot 入门(十二):报表导出,对比poi、jxl和esayExcel的效率...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 国内经典BI系统架构分析
- 下一篇: 从零开始一起学习SLAM | 学习SLA
