浏览代码

修改tools-poi,增加ExcelReader相关注释,返回DataMap的方法标记废弃

Signed-off-by: luoshi <luoshi@qmth.com.cn>
luoshi 10 月之前
父节点
当前提交
dfb141282f

+ 5 - 1
tools-poi/src/main/java/com/qmth/boot/tools/excel/ExcelReader.java

@@ -26,7 +26,7 @@ public class ExcelReader {
     private int columnNameRow;
 
     /**
-     * 初始化带表头的Excel解析工具
+     * 初始化带表头的Excel解析工具,默认只读取第一个sheet
      *
      * @param type          文件格式,XLSX或XLS
      * @param ins           文件输入流
@@ -86,11 +86,13 @@ public class ExcelReader {
     }
 
     /**
+     * !!不推荐使用!!<br/>
      * 解析Excel内容为默认的DataMap对象,返回所有对象
      *
      * @return
      * @throws Exception
      */
+    @Deprecated
     public List<DataMap> getDataMapList() throws Exception {
         ObjectCollector<DataMap> collector = new ObjectCollector<>();
         readDataMap(collector);
@@ -121,11 +123,13 @@ public class ExcelReader {
     }
 
     /**
+     * !!不推荐使用!!<br/>
      * 遍历Excel内容,转换为默认的DataMap对象,并输出给指定的监听器
      *
      * @param listener 指定的对象监听器
      * @throws Exception
      */
+    @Deprecated
     public void readDataMap(ObjectListener<DataMap> listener) throws Exception {
         parser.parse(ins, sheetFilter, new DataMapHandler(columnNameRow, listener));
     }

+ 2 - 2
tools-poi/src/main/java/com/qmth/boot/tools/excel/filter/SheetFilter.java

@@ -31,7 +31,7 @@ public class SheetFilter {
      *
      * @return
      */
-    public static SheetFilter ofIndex(int index) {
+    public static SheetFilter forIndex(int index) {
         SheetFilter filter = new SheetFilter();
         filter.index = index;
         return filter;
@@ -42,7 +42,7 @@ public class SheetFilter {
      *
      * @return
      */
-    public static SheetFilter ofName(String name) {
+    public static SheetFilter forName(String name) {
         SheetFilter filter = new SheetFilter();
         filter.names = new HashSet<>();
         filter.names.add(name);

+ 3 - 4
tools-poi/src/test/java/com/qmth/boot/test/tools/excel/read/ExcelReadTest.java

@@ -31,7 +31,7 @@ public class ExcelReadTest {
 
         listener = new ObjectCollector<>();
         ExcelReader
-                .create(ExcelType.XLSX, ByteArray.fromResource("test.xlsx").toInputStream(), SheetFilter.ofIndex(1), 0)
+                .create(ExcelType.XLSX, ByteArray.fromResource("test.xlsx").toInputStream(), SheetFilter.forIndex(1), 0)
                 .readObject(ExcelTestEntity.class, listener);
         list = listener.getObjectList();
         Assert.assertEquals(2, list.size());
@@ -56,9 +56,8 @@ public class ExcelReadTest {
         Assert.assertNull(list.get(3)[4]);
         Assert.assertEquals(list.get(3)[5], "2023/01/01");
 
-        list = ExcelReader
-                .create(ExcelType.XLS, ByteArray.fromResource("test.xls").toInputStream(), SheetFilter.ofIndex(1), 0)
-                .getDataArrayList();
+        list = ExcelReader.create(ExcelType.XLS, ByteArray.fromResource("test.xls").toInputStream(),
+                SheetFilter.forName("Sheet2"), 0).getDataArrayList();
         Assert.assertEquals(3, list.size());
         Assert.assertEquals(list.get(0)[3], "男");
         Assert.assertEquals(list.get(0)[1], "0.56");