pom依赖
<!-- easyExcel -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>1.1.2-beta4</version>
</dependency>
main方法测试
import com.alibaba.excel.EasyExcelFactory;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.metadata.Sheet;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) throws IOException {
List<User> list = new ArrayList<>();
User user1 = new User();
user1.setName("张三");
user1.setAge(20);
user1.setSex("男");
list.add(user1);
User user2 = new User();
user2.setName("李四");
user2.setAge(25);
user2.setSex("女");
list.add(user2);
String filePath = "E:\\home\\" + "test.xlsx";
try {
OutputStream out = new FileOutputStream(filePath);
ExcelWriter writer = EasyExcelFactory.getWriter(out);
// 写仅有一个 Sheet 的 Excel 文件, 此场景较为通用
Sheet sheet1 = new Sheet(1, 0, User.class);
// 第一个 sheet 名称
sheet1.setSheetName("sheet1");
// 写数据到 Writer 上下文中
// 入参1: 创建要写入的模型数据
// 入参2: 要写入的目标 sheet
writer.write(list, sheet1);
// 将上下文中的最终 outputStream 写入到指定文件中
writer.finish();
// 关闭流
out.close();
} catch (FileNotFoundException e) {
throw new RuntimeException(e);
}
}
}
User实体类
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.metadata.BaseRowModel;
import lombok.Data;
@Data
public class User extends BaseRowModel {
@ExcelProperty(value = "姓名", index = 0)
private String name;
@ExcelProperty(value = "年龄", index = 1)
private int age;
@ExcelProperty(value = "性别", index = 2)
private String sex;
}
测试结果: