您好,登錄后才能下訂單哦!
這期內(nèi)容當中小編將會給大家?guī)碛嘘P(guān)使用EasyPoi怎么導入導出Excel文檔,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
一、EasyPoi簡介
EasyPoi功能如同名字easy,主打的功能就是容易,讓一個沒見接觸過poi的人員 就可以方便的寫出Excel導出,Excel模板導出,Excel導入,Word模板導出,通過簡單的注解和模板 語言(熟悉的表達式語法),完成以前復(fù)雜的寫法 ,不如poi那么自定義,不如jxl那么多標簽,但是我們就是寫的少,寫的少。
EasyPoi的主要特點
設(shè)計精巧,使用簡單 接口豐富,擴展簡單 默認值多,write less do more spring mvc支持,web導出可以簡單明了
二、EasyPoi的功能介紹
Excel自適應(yīng)xls和xlsx兩種格式,word只支持docx模式,功能還是挺豐富的。
1.Excel導入
注解導入 Map導入 大數(shù)據(jù)量導入sax模式 導入文件保存 文件校驗 字段校驗
2.Excel導出
注解導出 模板導出 html導出
3.Excel轉(zhuǎn)html
4.word導出
5.pdf導出
三、重點功能介紹
1.注解
EasyPoi起因就是Excel的導入導出,最初的模板是實體和Excel的對應(yīng),model--row,filed--col 這樣利用注解我們可以和容易做到excel到導入導出 經(jīng)過一段時間發(fā)展,現(xiàn)在注解有5個類分別是
@Excel 作用到filed上面,是對Excel一列的一個描述 @ExcelCollection 表示一個集合,主要針對一對多的導出,比如一個老師對應(yīng)多個科目,科目就可以用集合表示 @ExcelEntity 表示一個繼續(xù)深入導出的實體,但他沒有太多的實際意義,只是告訴系統(tǒng)這個對象里面同樣有導出的字段 @ExcelIgnore 和名字一樣表示這個字段被忽略跳過這個導導出 @ExcelTarget 這個是作用于最外層的對象,描述這個對象的id,以便支持一個對象可以針對不同導出做出不同處理
2.Excel 模板
模板是處理復(fù)雜Excel的簡單方法,復(fù)雜的Excel樣式,可以用Excel直接編輯,完美的避開了代碼編寫樣式的雷區(qū),同時指令的支持,也提了模板的有效性。就像下面這樣使用,具體用法請看文檔。
3.Excel<->Html的互轉(zhuǎn)
4.Word模板導出
5.圖片的導入導出
@Test//圖片導入public void test() { try { ImportParams params = new ImportParams(); params.setNeedSave(true); List<CompanyHasImgModel> result = ExcelImportUtil.importExcel( new File(PoiPublicUtil.getWebRootPath("import/imgexcel.xls")), CompanyHasImgModel.class, params); for (int i = 0; i < result.size(); i++) { System.out.println(ReflectionToStringBuilder.toString(result.get(i))); } Assert.assertTrue(result.size() == 4); } catch (Exception e) { e.printStackTrace(); } }} //導出 @Excel(name = "公司LOGO", type = 2 ,width = 40 , height = 20,imageType = 1) private String companyLogo;
6.Excel大數(shù)據(jù)導出
大數(shù)據(jù)導出是當我們的導出數(shù)量在幾萬,到上百萬的數(shù)據(jù)時,一次從數(shù)據(jù)庫查詢這么多數(shù)據(jù)加載到內(nèi)存然后寫入會對我們的內(nèi)存和CPU都產(chǎn)生壓力,這個時候需要我們像分頁一樣處理導出分段寫入Excel緩解Excel的壓力 EasyPoi提供的是兩個方法 強制使用 xssf版本的Excel 。具體代碼看文檔,我們看下資源占用即可:
多次測試用時統(tǒng)計,速度還是可以接受的。
100W 16.4s 24.3MB 5 100W 15.9s 24.3MB 5 200W 29.5s 48.5MB 5 100W 30.8s 37.8MB 10 200W 58.7s 76.1MB 10
7.大數(shù)據(jù)導出View的用法
Easypoi view 項目是為了更簡單的方便搭建在導出時候的操作,利用spring mvc 的view 封裝,更加符合spring mvc的風格。EasypoiBigExcelExportView 是針對大數(shù)據(jù)量導出特定的View,在跳轉(zhuǎn)到這個View的時候不需要查詢數(shù)據(jù),而且這個View自己去查詢數(shù)據(jù),用戶只要實現(xiàn)IExcelExportServer接口就可以了 。
上述就是小編為大家分享的使用EasyPoi怎么導入導出Excel文檔了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。