import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.ArrayList;
import java.util.List;
/**
* @author lang.zhou
* @since 2023/10/8 14:28
*/
@EqualsAndHashCode(callSuper = true)
@Data
public abstract class AbstractExcelReadListener<T> extends AnalysisEventListener<T> {
/**
* 每次读取数量
*/
protected int batchSize = 1000;
protected int dataCount = 0;
protected List<T> dataList = new ArrayList<>();
/**
* 读取一行后回调
* @param data (列索引0开始 -> 值)
*/
@Override
public void invoke(T data, AnalysisContext context) {
dataList.add(data);
if(dataList.size() >= batchSize){
dataCount += dataList.size();
this.dataCallback(dataList);
dataList.clear();
}
}
/**
* 读取结束回调
*/
@Override
pub
easypoi使用listener读取excel
最新推荐文章于 2024-09-25 14:55:57 发布
本文介绍了如何使用阿里巴巴EasyExcel库创建一个抽象的Excel读取监听器,该监听器可以按批次处理数据并提供读取结束和每批数据处理的回调。示例代码展示了如何配置和使用这个监听器读取Excel文件。

最低0.47元/天 解锁文章
6948

被折叠的 条评论
为什么被折叠?



