-
POI
- 首先导入依赖
<!--poi导包-->
<!-- https://mvnrepository.com/artifact/org.apache.poi/poi -->
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.0</version>
</dependency>
- 模板
//导出
@Test
public void testPOIImport() {
try {
Workbook workbook = new HSSFWorkbook(new FileInputStream(new File("F:/user.xls")));
Sheet sheet = workbook.getSheet("user");
Row row = sheet.getRow(0);
String id = row.getCell(0).getStringCellValue();
String name = row.getCell(1).getStringCellValue();
String sex = row.getCell(2).getStringCellValue();
String bir = row.getCell(3).getStringCellValue();
System.out.println(id+"====="+name+"======"+sex+"======"+bir);
int lastRowNum = sheet.getLastRowNum();
for (int i = 1; i <= lastRowNum; i++) {
User user = new User();
Row row1 = sheet.getRow(i);
user.setId(row1.getCell(0).getStringCellValue());
user.setUsername(row1.getCell(1).getStringCellValue());
user.setSex(row1.getCell(2).getStringCellValue());
user.setCreateDate(row1.getCell(3).getDateCellValue());
System.out.println("user: "+user);
}
} catch (IOException e) {
e.printStackTrace();
}
}
-
EasyPoi
官方文档:EasyPoi使用教程
- 实体类
//教师实体类
public class Teacher implements Serializable {
@ExcelIgnore
private String id;
@Excel(name = "教师姓名",needMerge=true)
private String name;
@Excel(name = "性别")
private String sex;
@ExcelCollection(name = "java152班学员")
private List<Student> children;
}
//学生实体类
public class Student implements Serializable {
@Excel(name = "编号")
private String id;
@Excel(name = "姓名")
private String name;
@Excel(name = "年龄")
private Integer age;
@Excel(name = "生日",format = "yyyy年MM月dd日 HH时mm分ss秒",width = 30)
private Date bir;
@Excel(name = "头像", type = 2 ,width = 40 , height = 20)
private String image;
}
//生成excel
@Test
public void testEasypoi2() {
//学生集合
List<Student> list = new ArrayList<>();
for (int i = 1; i <= 10; i++) {
Student student = new Student(i+"","小花花"+i,10+i,new Date(),"F:\\framework\\cmfz\\cmfz_bxy\\src\\main\\webapp\\image\\shouye.png");
list.add(student);
}
//教师集合
List<Teacher> teachers = new ArrayList<>();
Teacher teacher1 = new Teacher("123123", "suns", "男", list);
Teacher teacher2 = new Teacher("123123", "liucy", "男", list);
teachers.add(teacher1);
teachers.add(teacher2);
//工作表
Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams("计算机一班学生","学生"),
Teacher.class, teachers);
try {
workbook.write(new FileOutputStream(new File("F:/student.xls")));
} catch (IOException e) {
e.printStackTrace();
}
}
- 主要还是参照官方文档进行导出