记录一个使用EasyExcle的问题

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();

}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章