This commit is contained in:
Paidax
2025-11-11 11:33:43 +08:00
parent 51a417ea20
commit dea071e25f
31 changed files with 348 additions and 110 deletions
@@ -1,4 +1,4 @@
package com.budwk.app.base.utils;
package com.budwk.app.base.utils.easyexcel;
import com.alibaba.excel.EasyExcelFactory;
import org.apache.poi.ss.formula.functions.T;
@@ -0,0 +1,48 @@
package com.budwk.app.base.utils.easyexcel;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.read.listener.ReadListener;
import lombok.Getter;
import lombok.extern.slf4j.Slf4j;
import org.nutz.lang.util.NutMap;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* @version 1.0
* @Author FKY
* @nameNoModelDataListener
* @Date 2025/11/8 15:22
* @注释 没有定义的数据对象的读取
*/
@Slf4j
public class NoModelDataListener implements ReadListener<Map<String, Object>> {
private boolean isFirstRow = true;
// 表头数据
@Getter
private List<String> headers = new ArrayList<>();
// 表内容数据
@Getter
private List<NutMap> dataList = new ArrayList<>();
@Override
public void invoke(Map<String, Object> rowMap, AnalysisContext context) {
if (isFirstRow) {
headers = new ArrayList<>(rowMap.keySet());
isFirstRow = false;
} else {
NutMap nutMap = new NutMap();
nutMap.putAll(rowMap);
dataList.add(nutMap);
}
}
@Override
public void doAfterAllAnalysed(AnalysisContext context) {
log.info("共读取 {} 行数据(不含表头)", dataList.size());
}
}