新增Excel导入导出实体单元测试类

This commit is contained in:
thinkgem
2025-10-22 10:48:54 +08:00
parent 46514450d6
commit 1da65bcf3f
6 changed files with 145 additions and 2 deletions

View File

@@ -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<ExcelTestEntity> 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.");
}
}

View File

@@ -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<ExcelTestEntity> 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.");
}
}

View File

@@ -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;

View File

@@ -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;
}
}

View File

@@ -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;