如何使用@ExcelProperty 注解实现
时间: 2023-08-24 11:22:57 浏览: 138
@ExcelProperty 注解是 EasyExcel 中用来指定实体类属性和 Excel 表格列之间映射关系的注解。它可以用在实体类的属性上,指定该属性对应 Excel 表格中的哪一列。
使用方法如下:
1. 在实体类的属性上添加 @ExcelProperty 注解,其中 value 属性用来指定 Excel 表格中的列名,index 属性用来指定列的索引(从0开始)。例如:
```java
public class User {
@ExcelProperty(value = "姓名", index = 0)
private String name;
@ExcelProperty(value = "年龄", index = 1)
private Integer age;
// ...
}
```
2. 在读取 Excel 表格时,需要创建一个实现了 ReadListener 接口的监听器类,并在读取 Excel 表格时将该监听器传入。在监听器的 invoke() 方法中,EasyExcel 会自动将 Excel 表格中的数据映射到实体类的属性上。例如:
```java
public class UserListener extends AnalysisEventListener<User> {
@Override
public void invoke(User user, AnalysisContext context) {
System.out.println("读取到用户信息:" + user);
}
@Override
public void doAfterAllAnalysed(AnalysisContext context) {
System.out.println("读取完成");
}
}
// 读取 Excel 表格
String fileName = "user.xlsx";
ExcelReader reader = EasyExcel.read(fileName, User.class, new UserListener()).build();
reader.read();
reader.finish();
```
在上述代码中,EasyExcel 会根据 @ExcelProperty 注解中指定的列名或索引,将 Excel 表格中的数据映射到 User 类的属性上,并在 invoke() 方法中返回 User 对象。
阅读全文