使用easyExcel注意事项
使用easyExcel写出信息到excel文件出现只有表头没有数据的现象。
参考来源 https://www.cnblogs.com/jeanfear/p/13409792.html
原因是我javabean上用到了@Data注解,并且里面的字段名是类似fUserName这种格式。
我猜测,第二个字母是大写的话,@Data自动生产的get方法跟easyExcel自动调用get方法名不一致?
记录下,防止以后出现相同的问题。
测试
02.xlsx中的样子
测试上述的链接中的结论
@Data
public class TestEasyExcel {
/**
* 对应excel中的表头(第一行就是表头)
*/
@ExcelProperty("学生姓名1")
private String name;
@ExcelProperty("学生姓名2")
private String bName;
@ExcelProperty("学生姓名3")
private String cnAme;
@ExcelProperty("学生姓名4")
private String dnaMe;
@ExcelProperty("学生姓名5")
private String enamE;
}
public class Test {
public static void main(String[] args) {
String fileName = "C:\Users\Administrator\Desktop\03.xlsx";
EasyExcel.write(fileName, TestEasyExcel.class).sheet("学生列表").doWrite(getData());
}
public static List<TestEasyExcel> getData(){
List<TestEasyExcel> list = new ArrayList<>();
TestEasyExcel test = new TestEasyExcel();
test.setName("学生姓名1");
test.setBName("学生姓名2");
test.setCnAme("学生姓名3");
test.setDnaMe("学生姓名4");
test.setEnamE("学生姓名5");
list.add(test);
return list;
}
}
测试的话不要忘了导如依赖
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.22</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-nop</artifactId>
<version>1.7.2</version>
</dependency>