本文代碼模仿自cc.aicode.e2e(該庫基於org.apache.poi)
https://aicode.cc/excel2entity
實現了Java POI對xls文件的讀取功能的封裝,實現了批量導入Excel中的數據時自動根據Excel中的數據行建立對應的Java POJO實體對象的功能。
該類庫也實現了在建立實體對象時對字段類型進行校驗,能夠對Excel中的數據類型合法性進行校驗,經過實現擴展接口,能夠實現自定義校驗規則以及自定義實體對象字段類型等更加複雜的校驗規則和字段類型轉換。java
<dependency>
<groupId>cc.aicode.java.e2e</groupId>
<artifactId>ExcelToEntity</artifactId>
<version>1.0.0.3</version>
</dependency>正則表達式
優勢:
核心,解析爲Entity(採用反射機制)。
支持中文列名讀取(使用自定義annotation進行列的解析)。apache
字段的讀取經過annotation控制,即只有打上了ExcelProperty annotation的字段,纔會被讀取到entity。
支持自定義字段類型(須要繼承ExcelType,已經調用registerNewType方法進行註冊),方便特殊字段value的處理(解析失敗會給出null值)。
支持字段格式(正則表達式)驗證。
驗證必填字段(只檢查,改列是否存在)。 spa
缺點:
暫時只支持讀取操做excel