diff --git a/common/src/test/java/com/jeesite/test/utils/excel/ExcelExportEntityTest.java b/common/src/test/java/com/jeesite/test/utils/excel/ExcelExportEntityTest.java new file mode 100644 index 00000000..a19c00b5 --- /dev/null +++ b/common/src/test/java/com/jeesite/test/utils/excel/ExcelExportEntityTest.java @@ -0,0 +1,47 @@ +/** + * Copyright (c) 2013-Now http://jeesite.com All rights reserved. + * No deletion without permission, or be held responsible to law. + */ +package com.jeesite.test.utils.excel; + +import com.jeesite.common.collect.ListUtils; +import com.jeesite.common.utils.excel.ExcelExport; + +import java.io.File; +import java.math.BigDecimal; +import java.util.List; + +/** + * 导出Excel文件测试类 + * @author ThinkGem + * @version 2025-10-21 + */ +public class ExcelExportEntityTest { + + /** + * 导出测试 + */ + public static void main(String[] args) throws Throwable { + + List list = ListUtils.newArrayList(); + for (int i = 1; i <= 50; i++) { + ExcelTestEntity e = new ExcelTestEntity(); + e.setField1("test"+i); + e.setField2(123+i); + e.setField3(BigDecimal.valueOf(12345+i)); + list.add(e); + } + + File classPath = new File(ExcelExportEntityTest.class.getResource("/").getFile()); + String fileName = classPath.getParentFile().getAbsoluteFile() + "/export_entity.xlsx"; + + // 创建一个Sheet表,并导入数据 + try(ExcelExport ee = new ExcelExport("表格1", ExcelTestEntity.class)){ + ee.setDataList(list).writeFile(fileName); + } + + System.out.println("Export success."); + + } + +} diff --git a/common/src/test/java/com/jeesite/test/utils/excel/ExcelImportEntityTest.java b/common/src/test/java/com/jeesite/test/utils/excel/ExcelImportEntityTest.java new file mode 100644 index 00000000..2b1a6c6b --- /dev/null +++ b/common/src/test/java/com/jeesite/test/utils/excel/ExcelImportEntityTest.java @@ -0,0 +1,39 @@ +/** + * Copyright (c) 2013-Now http://jeesite.com All rights reserved. + * No deletion without permission, or be held responsible to law. + */ +package com.jeesite.test.utils.excel; + +import com.jeesite.common.utils.excel.ExcelImport; + +import java.io.File; +import java.util.List; + +/** + * 导入Excel文件测试类 + * @author ThinkGem + * @version 2025-10-21 + */ +public class ExcelImportEntityTest { + + /** + * 导入测试 + */ + public static void main(String[] args) throws Throwable { + + File classPath = new File(ExcelExportTest.class.getResource("/").getFile()); + String fileName = classPath.getParentFile().getAbsoluteFile() + "/export_entity.xlsx"; + try(ExcelImport ei = new ExcelImport(fileName, 2, 0)){ + List list = ei.getDataList(ExcelTestEntity.class); + for (ExcelTestEntity e : list) { + System.out.print(e.getField1()+", "); + System.out.print(e.getField2()+", "); + System.out.print(e.getField3()+", "); + System.out.println(); + } + } + + System.out.println("Import success."); + } + +} diff --git a/common/src/test/java/com/jeesite/test/utils/excel/ExcelImportTest.java b/common/src/test/java/com/jeesite/test/utils/excel/ExcelImportTest.java index a386a291..5d32ee08 100644 --- a/common/src/test/java/com/jeesite/test/utils/excel/ExcelImportTest.java +++ b/common/src/test/java/com/jeesite/test/utils/excel/ExcelImportTest.java @@ -6,8 +6,6 @@ package com.jeesite.test.utils.excel; import com.jeesite.common.utils.excel.ExcelImport; import org.apache.poi.ss.usermodel.Row; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; import java.io.File; diff --git a/common/src/test/java/com/jeesite/test/utils/excel/ExcelTestEntity.java b/common/src/test/java/com/jeesite/test/utils/excel/ExcelTestEntity.java new file mode 100644 index 00000000..ef4b6279 --- /dev/null +++ b/common/src/test/java/com/jeesite/test/utils/excel/ExcelTestEntity.java @@ -0,0 +1,55 @@ +/** + * Copyright (c) 2013-Now http://jeesite.com All rights reserved. + * No deletion without permission, or be held responsible to law. + */ +package com.jeesite.test.utils.excel; + +import com.jeesite.common.utils.excel.annotation.ExcelField; +import com.jeesite.common.utils.excel.annotation.ExcelFields; + +import java.math.BigDecimal; + +/** + * Excel 测试数据实体 + * @author ThinkGem + */ +public class ExcelTestEntity { + + // 方式1:声明在字段上 + @ExcelField(title = "字段1", align = ExcelField.Align.CENTER, sort = 10) + private String field1; + private Integer field2; + private BigDecimal field3; + + // 方式2:声明在构造上 + @ExcelFields({ + @ExcelField(title = "字段2", attrName = "field2", align = ExcelField.Align.CENTER, sort = 20), + }) + public ExcelTestEntity() {} + + public String getField1() { + return field1; + } + + public void setField1(String field1) { + this.field1 = field1; + } + + public Integer getField2() { + return field2; + } + + public void setField2(Integer field2) { + this.field2 = field2; + } + + // 方式3:声明在方法上 + @ExcelField(title = "字段3", align = ExcelField.Align.CENTER, sort = 30) + public BigDecimal getField3() { + return field3; + } + + public void setField3(BigDecimal field3) { + this.field3 = field3; + } +} \ No newline at end of file diff --git a/common/src/test/java/com/jeesite/test/utils/word/WordExportTest.java b/common/src/test/java/com/jeesite/test/utils/word/WordExportTest.java index 18abb25f..34d9f77a 100644 --- a/common/src/test/java/com/jeesite/test/utils/word/WordExportTest.java +++ b/common/src/test/java/com/jeesite/test/utils/word/WordExportTest.java @@ -1,3 +1,7 @@ +/** + * Copyright (c) 2013-Now http://jeesite.com All rights reserved. + * No deletion without permission, or be held responsible to law. + */ package com.jeesite.test.utils.word; import com.jeesite.common.io.FileUtils; diff --git a/common/src/test/java/logback.xml b/common/src/test/resources/logback.xml similarity index 100% rename from common/src/test/java/logback.xml rename to common/src/test/resources/logback.xml