1、添加EasyExcel依赖到 pom
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.1.1</version>
</dependency>
<!--xls-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>3.17</version>
</dependency>
<!--xlsx-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>3.17</version>
</dependency>
2、EasyExcel 写入 Excel
@Data
public class DemoData {
@ExcelProperty(value = "学生编号", index = 0)
private Integer sno;
@ExcelProperty(value = "学生姓名", index = 1)
private String sname;
}
@Test
public void writeTest() {
String fileName = "G:\\test\\write.xls";
EasyExcel.write(fileName, DemoData.class).sheet("学生列表").doWrite(getData());
}
private static List<DemoData> getData() {
List<DemoData> demoDataList = new ArrayList<>();
for (int i = 0; i < 50; i++) {
DemoData data = new DemoData();
data.setSno(1 + i);
data.setSname("张三_" + (i + 1));
demoDataList.add(data);
}
return demoDataList;
}
截图
3、EasyExcel 读取 Excel
@Test
public void readTest() {
String fileName = "G:\\test\\write.xls";
EasyExcel.read(fileName, DemoData.class, new AnalysisEventListener<DemoData>() {
@Override
public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) {
System.out.println("表头:" + headMap);
}
@Override
public void invoke(DemoData o, AnalysisContext analysisContext) {
System.out.println("====" + o.toString());
}
@Override
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
}
}).sheet().doRead();
}
表头:{0=学生编号, 1=学生姓名}
====DemoData(sno=1, sname=张三_1)
====DemoData(sno=2, sname=张三_2)
====DemoData(sno=3, sname=张三_3)
====DemoData(sno=4, sname=张三_4)
====DemoData(sno=5, sname=张三_5)
====DemoData(sno=6, sname=张三_6)
====DemoData(sno=7, sname=张三_7)
====DemoData(sno=8, sname=张三_8)
====DemoData(sno=9, sname=张三_9)
====DemoData(sno=10, sname=张三_10)
====DemoData(sno=11, sname=张三_11)
====DemoData(sno=12, sname=张三_12)
====DemoData(sno=13, sname=张三_13)
====DemoData(sno=14, sname=张三_14)
====DemoData(sno=15, sname=张三_15)
====DemoData(sno=16, sname=张三_16)
====DemoData(sno=17, sname=张三_17)
====DemoData(sno=18, sname=张三_18)
====DemoData(sno=19, sname=张三_19)
====DemoData(sno=20, sname=张三_20)
====DemoData(sno=21, sname=张三_21)
====DemoData(sno=22, sname=张三_22)
====DemoData(sno=23, sname=张三_23)