成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Java對象和Excel轉(zhuǎn)換工具XXL-EXCEL

mj / 2723人閱讀

摘要:一行代碼完成對象和之間的轉(zhuǎn)換。說明屬性列名稱四版本更新日志版本,新特性導(dǎo)出支持對象裝換為,并且支持字節(jié)數(shù)組等多種導(dǎo)出方式導(dǎo)入支持轉(zhuǎn)換為對象,并且支持文件路徑等多種導(dǎo)入方式版本,新特性字段支持類型。

《Java對象和Excel轉(zhuǎn)換工具XXL-EXCEL》




一、簡介 1.1 概述

XXL-EXCEL 是一個(gè)靈活的Java對象和Excel文檔相互轉(zhuǎn)換的工具。

一行代碼完成Java對象和Excel之間的轉(zhuǎn)換。

1.2 特性

1、Excel導(dǎo)出:支持Java對象裝換為Excel,并且支持File、字節(jié)數(shù)組、Workbook等多種導(dǎo)出方式;

2、Excel導(dǎo)入:支持Excel轉(zhuǎn)換為Java對象,并且支持File、InputStream、文件路徑、Workbook等多種導(dǎo)入方式;

3、全基礎(chǔ)數(shù)據(jù)類型支持:Excel的映射Java對象支持設(shè)置任意基礎(chǔ)數(shù)據(jù)類型,將會自動完整值注入;

4、Field寬度自適應(yīng);

5、多Sheet導(dǎo)出:導(dǎo)出Excel時(shí)支持設(shè)置多張sheet;

6、多Sheet導(dǎo)入:導(dǎo)入Excel時(shí)支持設(shè)置多張sheet,通過 "@ExcelSheet.name" 注解匹配Sheet;

1.4 下載 文檔地址

中文文檔

源碼倉庫地址
源碼倉庫地址 Release Download
https://github.com/xuxueli/xxl-excel Download
https://gitee.com/xuxueli0323/xxl-excel Download
技術(shù)交流

社區(qū)交流

1.5 環(huán)境

JDK:1.7+

二、快速入門 2.1 引入maven依賴


    com.xuxueli
    xxl-excel
    1.0.0
2.2 定義Java對象
@ExcelSheet(name = "商戶列表", headColor = HSSFColor.HSSFColorPredefined.LIGHT_GREEN)
public class ShopDTO {

    @ExcelField(name = "商戶ID")
    private int shopId;

    @ExcelField(name = "商戶名稱")
    private String shopName;

    public ShopDTO() {
    }

    public ShopDTO(int shopId, String shopName) {
        this.shopId = shopId;
        this.shopName = shopName;
    }

    public int getShopId() {
        return shopId;
    }

    public void setShopId(int shopId) {
        this.shopId = shopId;
    }

    public String getShopName() {
        return shopName;
    }

    public void setShopName(String shopName) {
        this.shopName = shopName;
    }

}
2.3 Excel導(dǎo)出:Object 轉(zhuǎn)換為 Excel
// 參考測試代碼:com.xuxueli.poi.excel.test.Test

/**
 * Excel導(dǎo)出:Object 轉(zhuǎn)換為 Excel
 */
ExcelExportUtil.exportToFile(filePath, shopDTOList);
2.4 Excel導(dǎo)入:Excel 轉(zhuǎn)換為 Object
// 參考測試代碼:com.xuxueli.poi.excel.test.Test

/**
 * Excel導(dǎo)入:Excel 轉(zhuǎn)換為 Object
  */
List list = ExcelImportUtil.importExcel(ShopDTO.class, filePath);
三、總體設(shè)計(jì)
3.1 功能定位

XXL-EXCEL 是在 Java 對象和 Excel 文檔之間進(jìn)行轉(zhuǎn)換的迅速而靈活的工具。

借助 XXL-EXCEL,一個(gè)Java類對象可以完整描述一張Excel表,XXL-EXCEL 做的事情就是把Java對象映射成Excel文件,同時(shí)保證性能和穩(wěn)定。

3.2 Java 對象 和 Excel映射關(guān)系
-- Excel Java 對象
Sheet Java對象列表
表頭 Sheet首行 Java對象Field
數(shù)據(jù) Sheet一行記錄 Java對象列表中一個(gè)元素
3.3 核心注解:ExcelSheet

功能:描述Sheet信息,注解添加在待轉(zhuǎn)換為Excel的Java對象類上,可選屬性如下。

ExcelSheet 說明
name 表/Sheet名稱
headColor 表頭/Sheet首行的顏色
3.4 核心注解:ExcelField

功能:描述Sheet的列信息,注解添加在待轉(zhuǎn)換為Excel的Java對象類的字段上,可選屬性如下。

ExcelField 說明
name 屬性/列名稱
四、版本更新日志 版本 V1.0.0,新特性[2017-09-13]

1、Excel導(dǎo)出:支持Java對象裝換為Excel,并且支持File、字節(jié)數(shù)組、Workbook等多種導(dǎo)出方式;

2、Excel導(dǎo)入:支持Excel轉(zhuǎn)換為Java對象,并且支持File、InputStream、文件路徑、Workbook等多種導(dǎo)入方式;

版本 V1.1.0,新特性[2017-12-14]

1、字段支持Date類型。至此,已經(jīng)支持全部基礎(chǔ)數(shù)據(jù)類型。

2、Java轉(zhuǎn)換Excel時(shí),字段類型改為從Field上讀取,避免Value為空時(shí)空指針問題。

3、升級POI至3.17版本;

4、支持設(shè)置Field寬度;如果不指定列寬,將會自適應(yīng)調(diào)整寬度;

5、多Sheet導(dǎo)出:導(dǎo)出Excel時(shí)支持設(shè)置多張sheet;

6、多Sheet導(dǎo)入:導(dǎo)入Excel時(shí)支持設(shè)置多張sheet,通過 "@ExcelSheet.name" 注解匹配Sheet;

版本 V1.1.1,新特性[迭代中] TODO LIST

1、單個(gè)Excel多Sheet導(dǎo)出導(dǎo)出;

2、列合并導(dǎo)入導(dǎo)出;

3、行合并導(dǎo)入導(dǎo)出;

4、HSSFWorkbook=2003/xls、XSSFWorkbook=2007/xlsx 兼容支持;

5、流式導(dǎo)入:多批次導(dǎo)入數(shù)據(jù);

7、流式導(dǎo)出:分頁方式導(dǎo)出數(shù)據(jù);

6、單表行數(shù)限制:2003/xls=65536,2007/xlsx=1048576;行數(shù)限制內(nèi)進(jìn)行性能測試和優(yōu)化;

8、排序的字段,對時(shí)間等其他類型的處理。

9、Java已經(jīng)支持全基礎(chǔ)數(shù)據(jù)類型導(dǎo)入導(dǎo)出,但是Excel僅支持STRING類型CELL,需要字段屬性支持定義CELL類型;

10、支持空數(shù)據(jù),導(dǎo)入導(dǎo)出。

11、同一個(gè)單元格,橫向、豎向拆分多個(gè)單元格;List屬性;

12、Excel導(dǎo)入多Sheet支持;

五、其他 5.1 項(xiàng)目貢獻(xiàn)

歡迎參與項(xiàng)目貢獻(xiàn)!比如提交PR修復(fù)一個(gè)bug,或者新建 Issue 討論新特性或者變更。

5.2 用戶接入登記

更多接入的公司,歡迎在 登記地址 登記,登記僅僅為了產(chǎn)品推廣。

5.3 開源協(xié)議和版權(quán)

產(chǎn)品開源免費(fèi),并且將持續(xù)提供免費(fèi)的社區(qū)技術(shù)支持。個(gè)人或企業(yè)內(nèi)部可自由的接入和使用。

Licensed under the GNU General Public License (GPL) v3.

Copyright (c) 2015-present, xuxueli.

捐贈

無論金額多少都足夠表達(dá)您這份心意,非常感謝 :) 前往捐贈

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/70855.html

相關(guān)文章

  • XXL-EXCEL v1.1.1 發(fā)布,Java對象Excel轉(zhuǎn)換工具

    摘要:新特性支持設(shè)置水平位置,如居中居左底層優(yōu)化,預(yù)約多操作支持空導(dǎo)入拋錯(cuò)問題修復(fù)數(shù)據(jù)類型識別優(yōu)化,全類型支持導(dǎo)入時(shí)支持空導(dǎo)出時(shí)限制非空,否則無法進(jìn)行類型推導(dǎo)。概述是一個(gè)靈活的對象和文檔相互轉(zhuǎn)換的工具。一行代碼完成對象和之間的轉(zhuǎn)換。 v1.1.1 新特性 1、支持設(shè)置Field水平位置,如居中、居左; 2、底層API優(yōu)化,預(yù)約多Sheet操作支持; 3、空Cell導(dǎo)入拋錯(cuò)問題修復(fù); 4、C...

    劉玉平 評論0 收藏0
  • jxcel - 好用的ExcelJava對象轉(zhuǎn)換工具

    摘要:更多精彩博文,歡迎訪問我的個(gè)人博客簡介是一個(gè)支持對象與目前僅互相轉(zhuǎn)換的工具包。 更多精彩博文,歡迎訪問我的個(gè)人博客 Jxcel簡介 Jxcel是一個(gè)支持Java對象與Excel(目前僅xlsx、xls)互相轉(zhuǎn)換的工具包。 項(xiàng)目地址:https://github.com/jptangchin... 特性說明 Java對象輸出為Excel文件或Workbook對象 語義化轉(zhuǎn)換,將數(shù)字類...

    ivan_qhz 評論0 收藏0
  • java 導(dǎo)出 excel 最佳實(shí)踐,java 大文件 excel 避免OOM(內(nèi)存溢出) exce

    摘要:消費(fèi)之后,多線程處理文件導(dǎo)出,生成文件后上傳到等文件服務(wù)器。前端直接查詢并且展現(xiàn)對應(yīng)的任務(wù)執(zhí)行列表,去等文件服務(wù)器下載文件即可。這客戶體驗(yàn)不友好,而且網(wǎng)絡(luò)傳輸,系統(tǒng)占用多種問題。拓展閱讀導(dǎo)出最佳實(shí)踐框架 產(chǎn)品需求 產(chǎn)品經(jīng)理需要導(dǎo)出一個(gè)頁面的所有的信息到 EXCEL 文件。 需求分析 對于 excel 導(dǎo)出,是一個(gè)很常見的需求。 最常見的解決方案就是使用 poi 直接同步導(dǎo)出一個(gè) exc...

    K_B_Z 評論0 收藏0
  • Java Excel導(dǎo)入導(dǎo)出,基于XMLEasy-excel使用

    摘要:我想能不能像配置文件一樣可配置的導(dǎo)入導(dǎo)出,那樣使用起來就方便許多。配置和使用下面是員工信息模型。支持多種映射,使用英文逗號進(jìn)行分割。導(dǎo)入時(shí)它會以分割前面的作為導(dǎo)入時(shí)使用的值,后面的作為導(dǎo)出時(shí)使用的值后面值進(jìn)行逆推導(dǎo)出時(shí)同理。 1.前言 在工作時(shí),遇到過這樣的需求,需要靈活的對工單進(jìn)行導(dǎo)入或?qū)С觯郧白约阂沧鲞^,但使用不靈活繁瑣。我想能不能像配置文件一樣可配置的導(dǎo)入導(dǎo)出,那樣使用起來就方...

    13651657101 評論0 收藏0

發(fā)表評論

0條評論

mj

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<