这里使用maven构建项目
导入依赖
<dependencies>
<!-- apache的poi-->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
</dependency>
<!-- 阿里巴巴esayexcel -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.1.1</version>
</dependency>
</dependencies>
因为阿里巴巴开源的easyexcel是在apache的poi上做的升级封装,性能No1
代码
先创建一个表头,实体类对象(pojo),这里使用的是lombok的@Data注解自动生成get方法和set方法,如不懂就手动写get和set方法即可
package com.atguigu.eduservice.excel;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Data;
/**
* @Author YangXingChen
* @Date 2022/5/22 17:00
* @Version 1.0
*/
@Data
public class DemoData {
@ExcelProperty("学生编号")
private Integer id;
@ExcelProperty("学生姓名")
private String name;
}
@ExcelProperty(“学生编号”)对应这里的表头
业务逻辑
package com.atguigu.eduservice.excel;
import com.alibaba.excel.EasyExcel;
import java.util.ArrayList;
import java.util.List;
/**
* @Author YangXingChen
* @Date 2022/5/22 17:00
* @Version 1.0
*/
public class Demo {
public static void main(String[] args) {
// 写入存放路径
String fileName="D://笔记//writer.xls";
// 创建excel对象参数一:路径,参数二:实体类对象。sheet:表sheet名,doWrite:存放的对象集合
EasyExcel.write(fileName,DemoData.class).sheet("学生表").doWrite(studentData());
}
// 这里我们创建一个方法,里面负责往集合里面存放数据(这里改成对于的业务逻辑即可)
public static List<DemoData> studentData(){
ArrayList<DemoData> demoData = new ArrayList<>();
for (int i = 0; i < 10; i++) {
DemoData demoData1 = new DemoData();
demoData1.setId(i);
demoData1.setName("xc"+i);
demoData.add(demoData1);
}
return demoData;
}
}
然后运行,执行成功后