文檔類的導入導出(待補充)

excel的導入導出

Excel有以下幾種

  • 異步下載!異步!異步!異步!
  • 如果對樣式沒什麼要求,也不用公式的話,強烈推薦導出CSV格式
  • 可以採用多線程的方式,先查總數,然後分一下看需要多少個線程,每個線程讀取一部數據並寫入單獨Excel文件;當然,也可以多線程讀,單線程寫
  • 分批導,這一點跟上一步類似

關於導Excel的組件,大概有4種:

  • CSV :導出文件的速度很快
  • POI:POI支持excel2003和2007,而jxl只支持excel2003。
  • JXLS:JXLS用模板的方式也很方便,可以預先定義好樣式格式
  • EasyPoi:easypoi是在poi基礎上做了封裝,使用註解就能輕鬆完成導出。

Apache POI

 <!-- Excel 導入導出-->
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi</artifactId>
            <version>3.8</version>
        </dependency>
        <dependency>
            <groupId>org.apache.poi</groupId>
            <artifactId>poi-ooxml</artifactId>
            <version>3.8</version>
        </dependency>

Apache的POI提供API給java程序進行OFFICE的讀寫,這種方式優點明顯。結構非常清晰,逐層創建即可。

1、創建excel文檔:通過創建XSSFWorkbook,以及sheet、row、cell,並對cell進行內容填充及格式設置。關於這部分處理,參考有個牛人的詳細文章:http://www.cnblogs.com/huajiezh/p/5467821.html。

2、獲取輸出流

3、將創建好的workbook寫入到輸出流中。

1、Apache POI Excel操作網上

2、HSSFWorkbook導出條數上限(<=2003版)是65535行、256列 (xsl格式)

3、XSSFWorkbook 導出數據上限(>=2007版) 是1048576行,16384列 xslx格式

4、SXSSFWorkbook 海量數據 xslx格式

  • 海量數據的操作:
    大數據量的導出

對於大數據量的導出通常採用分而治之的思想,將大數據量分批次的導出到多個Excel文件或者單個Excel文件的多個sheet,也可導出到多個Excel文件後合併從單獨的文件,其實現方式可參考:https://github.com/chunericli/xpt-excel-extension

總結:大數據量的處理需要注意對內存使用的影響和對業務的影響。除非必要,要不然最好使用異步的方式進行處理,即首先保存文件元數據信息,然後分批次保存數據和分批次讀取數據。

5、海量數據導入

EasyPoi導入導出excel

https://blog.csdn.net/lijinzhou2017/article/details/83108550

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章