使用easyExcel寫出信息到excel文件出現只有表頭沒有數據的現象。 參考來源 https://www.cnblogs.com/jeanfear/p/13409792.html 原因是我javabean上用到了@Data註解,並且裡面的欄位名是類似fUserName這種格式。 我猜測,第二個字 ...
使用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>