easypoi導出excel 效率_Spring Boot 入門(十二):報表導出,對比poi、jxl和esayExcel的效率...

關于poi、jxl和esayExcel的介紹自行百度。

jxl最多支持03版excel,所以單個sheet頁面最多只能導出65536條數據。

我直接將excel導入到瀏覽器并打開,以下統計導出時長指將數據從數據庫查詢,并寫入到excel的過程。不包括打開excel所消耗的時間

為了接近真實場景,我建了一個表,一共有32個字段,其中2個id:一個自增長、一個UUID,10個int型字段,10個String字段,10個datatime字段;導出的excel包含了32個字段

我每次導出一個excel后,直接將jvm的內存清空,再進行下一個excel的導出,保證導出excel不受其它線程的影響

我只是為了比較性能,所以沒有對excel的樣式進行過多的渲染

poi方式,我使用的是刷新硬盤的方式,數據量大于設置的值,就將內存中的數據刷新到硬盤,降低OOM的概率,同時也增加了導出效率

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相應的方式寫入到內存,然后在瀏覽器端打開,所以頁面部分不能用ajax請求

1

2

3 poi導出

4 jxl導出

5 esayExcel導出

6

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/453934.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/453934.shtml
英文地址,請注明出處:http://en.pswp.cn/news/453934.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Python html 代碼轉成圖片、PDF

一、下載 1、python的imgkit、pdfkit庫 pip install imgkit pip install pdfkit 2、wkhtmltopdf工具包 下載地址:https://wkhtmltopdf.org/downloads.html 下載之后安裝,安裝完成會生成兩個程序,分別用來轉圖片和pdf: 二、使…

SpringEL expression:

2019獨角獸企業重金招聘Python工程師標準>>> 這個異常有下面幾種情況 1、你寫的 EL 表達式有語法錯誤。 2、再者就是你取得變量是多級的話比如 student.address.prevince 屬性model 關聯有問題。 3、還有就是你取得值為空(null) 比如 Thymel…

利用qt和ffmpeg軟件來制作視頻裁剪工具

0 什么是ffmpeg? Libav(舊稱:FFmpeg)是一個自由軟件,可以運行音頻和視頻多種格式的錄影、轉檔、流功能[1],包含了libavcodec ─這是一個用于多個專案中音頻和視頻的解碼器庫,以及 libavformat ——一個音頻…

fresco使用中圓角出現了黑邊

其實并不是出現了黑邊,而是圖片上有顏色滲出 如何修改 在xml加入 fresco:roundWithOverlayColor "color/transparent" //就是把圓角覆蓋圖改為透明色 轉載于:https://www.cnblogs.com/vete-l/p/7998122.html

Python 第三方庫之 docxtpl (處理word文檔)

項目官方文檔 項目官方git docxtpl 軟件包使用兩個主要軟件包: python docx,用于讀取、寫入和創建子文檔jinja2用于管理插入到模板docx中的標記。jinja官網, jinja中文網站 簡單示例 from docxtpl import DocxTemplatetpl DocxTemplate(test.docx)con…

域添加另一臺機器_巨杉Tech | SequoiaDB數據域概念解讀與實踐

近年來,銀行各項業務發展迅猛,客戶數目不斷增加,后臺服務系統壓力也越來越大,系統的各項硬件資源也變得非常緊張。因此,在技術風險可控的基礎上,希望引入大數據技術,利用大數據技術優化現有IT系…

Citrix XenServer 池要求

池要求 資源池是一臺或多臺服務器的同類或異類聚合,每個池最多包含 16 臺服務器。創建池或將服務器加入現有池前,應確保池中的所有服務器滿足下面介紹的要求。 硬件要求 XenServer 資源池中的所有服務器必須具有廣泛兼容的 CPU,也就是說&…

推薦一個接口文檔工具

ShowDoc 轉載于:https://www.cnblogs.com/LW-baiyun/p/8003975.html

自動轉換flv文件

在線轉化.誰有 把其他的視頻文件格式的視頻,經過上傳自動轉化FLV格式的一種插件.提供編程接口.給我一份.類似新浪網播客上傳視頻的一樣. (還有上傳是的哪個效果,進度條如何作的?)或者給我個參考地址什 ... 環境:redhat as41。首先獲取ffmpeg很多人找不到怎么下載,其…

云計算的概念_云計算概念掀起漲停潮 美利云奠定板塊龍頭地位

溫馨提示:股市風險時刻存在,文中所提個股僅為個人觀點,請勿盲目跟隨操作,筆者希望大家都做到不貪婪,不恐懼,不瞎猜,不跟風做一個紀律嚴明輕松淡定的股票交易者。社4月26日訊,滬深兩市…

Python 第三方模塊之 PDFMiner(pdf信息提取)

PDFMiner簡介 pdf提取目前的解決方案大致只有pyPDF和PDFMiner。據說PDFMiner更適合文本的解析,首先說明的是解析PDF是非常蛋疼的事,即使是PDFMiner對于格式不工整的PDF解析效果也不怎么樣,所以連PDFMiner的開發者都吐槽PDF is evil. 不過這些…

TFS2017持續發布中調用PowerShell啟停遠程應用程序

目前團隊項目中有多個Web、服務以及與大數據平臺對接接口等應用,每次的發布和部署采用手工的方式進行。停止應用程序,拷貝發布包,啟動應用程序,不停的循環著,并且時不時地會出現一些人為錯誤性問題。這種模式消耗的很多…

Flask 多線程

參數 app.run()中可以接受兩個參數,分別是threaded和processes,用于開啟線程支持和進程支持。 threaded: 是否開啟多線程,默認不開啟。 if __name__ __main__:app.run(threadedTrue)processes:進程數量&#xff0c…

40天python入門教程_Python入門教程超詳細1小時學會Python

Java和Javascript,不用1小時你就可以用Python快速流暢地寫有用的Python程序.為什么使用Python假設我們有這么一項任務:簡單測試局域網中的電腦是否連通.這些電腦的ip范圍從192.168.0.101到192.168.0.200.思路:用shell編程.(Linux通常是bash而Windows是批處理腳本).例如,在Windo…

基于LVS對LAMP做負載均衡集群

一、簡介 LVS是Linux Virtual Server的簡稱,也就是Linux虛擬服務器, 是一個由章文嵩博士發起的自由軟件項目,它的官方站點是www.linuxvirtualserver.org。現在LVS已經是 Linux標準內核的一部分,在Linux2.4內核以前,使用LVS時必須要…

Python_Day1

1、猜年齡游戲: (1):每循環3次,counter值返回為0,重新開始循環;(2):continue 意思是跳出當前循環;(3)&#xff1…

kafka 入門

初識 Kafka 什么是 Kafka Kafka 是由 Linkedin 公司開發的,它是一個分布式的,支持多分區、多副本,基于 Zookeeper 的分布式消息流平臺,它同時也是一款開源的 基于發布訂閱模式的消息引擎系統。 Kafka 的基本術語 消息&#xf…

實體詞典 情感詞典_tidytextpy包 | 對三體進行情感分析

騰訊課堂 | Python網絡爬蟲與文本分析TidyTextPy前天我分享了 tidytext | 耳目一新的R-style文本分析庫 但是tidytext不夠完善,我在tidytext基礎上增加了情感詞典,可以進行情感計算,為了區別前者,將其命名為tidytextpy。大家有時間…

TensorFlow實現LeNet5模型

# -*- coding: utf-8 -*-import tensorflow as tffrom tensorflow.examples.tutorials.mnist import input_data# 獲取mnist數據mnist input_data.read_data_sets("MNIST_data/", one_hotTrue)# 注冊默認session 后面操作無需指定session 不同sesson之間的數據是獨立…

Python基礎第一天

一、內容 二、練習 練習1 題目&#xff1a;使用while循環輸出1 2 3 4 5 6 8 9 10 方法一&#xff1a; 圖示&#xff1a; 代碼&#xff1a; count 1 while count < 11:if count ! 7:print(count)count 1輸出結果&#xff1a; 1 2 3 4 5 6 8 9 10 View Code方法二&#xff1…