1、當list對象加上 static修飾符,DemoDataListener的實例調用getData有返回值,否則就沒有
不知道是啥原因
public static List<TestMaoDto> list = new ArrayList<>();
private TestMaoDto demoDAO;
public DemoDataListener() {
demoDAO = new TestMaoDto();
}
public DemoDataListener(TestMaoDto demoDAO) {
this.demoDAO = demoDAO;
}
public void invoke(TestMaoDto data, AnalysisContext context) {
list.add(data);
}
@Override
public void doAfterAllAnalysed(AnalysisContext context) {
// 這裏也要保存數據,確保最後遺留的數據也存儲到數據庫
saveData();
}
/**
* 加上存儲數據庫
*/
private void saveData() {
return;
}
public List<TestMaoDto> getData(){
return list;
}
}
@Test
public void test(){ String fileName ="../excelstore/test.xlsx"; // 寫法2: DemoDataListener demoDataListener = new DemoDataListener();
ExcelReader excelReader = EasyExcel.read(fileName, TestMaoDto.class, demoDataListener).build();
EasyExcel.read(fileName, TestMaoDto.class, new DemoDataListener()).sheet().doRead();
System.out.println(demoDataListener);
List<TestMaoDto> data = demoDataListener.getData();
System.out.println(JSON.toJSONString(data));
excelReader.finish();
}