百万数据报表导出:需求以及思路分析
生活随笔
收集整理的這篇文章主要介紹了
百万数据报表导出:需求以及思路分析
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
百萬數(shù)據(jù)報表導(dǎo)出
需求分析
使用Apache POI完成百萬數(shù)據(jù)量的Excel報表導(dǎo)出
解決方案
思路分析
基于XSSFWork導(dǎo)出Excel報表,是通過將所有單元格對象保存到內(nèi)存中,當(dāng)所有的Excel單元格全部創(chuàng)建完成之后一次性寫入到Excel并導(dǎo)出。當(dāng)百萬數(shù)據(jù)級別的Excel導(dǎo)出時,隨著表格的不斷創(chuàng)建,內(nèi)存中對象越來越多,直至內(nèi)存溢出。Apache Poi提供了SXSSFWork對象,專門用于處理大數(shù)據(jù)量Excel報表導(dǎo)出。
原理分析
在實例化SXSSFWork這個對象時,可以指定在內(nèi)存中所產(chǎn)生的POI導(dǎo)出相關(guān)對象的數(shù)量(默認(rèn)100),一旦內(nèi)存中的對象的個數(shù)達(dá)到這個指定值時,就將內(nèi)存中的這些對象的內(nèi)容寫入到磁盤中(XML的文件格式),就可以將這些對象從內(nèi)存中銷毀,以后只要達(dá)到這個值,就會以類似的處理方式處理,直至Excel導(dǎo)出完成。
總結(jié)
以上是生活随笔為你收集整理的百万数据报表导出:需求以及思路分析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 百万数据报表:分析以及解决办法
- 下一篇: 百万数据报表导出:使用SXSSFWork