|
@@ -10,15 +10,15 @@ import java.util.function.Consumer;
|
|
|
public class EasyExcelListener<T> extends AnalysisEventListener<T> {
|
|
|
private final int pageSize;
|
|
|
private final List<T> list;
|
|
|
- private final EasyExcelInterface<T> consumer;
|
|
|
- private final Consumer<Exception> runnable;
|
|
|
+ private final IHandleData<T> handleDataFun;
|
|
|
+ private final Consumer<Exception> handleException;
|
|
|
private int radeLine = 0;
|
|
|
private Integer totalLine;
|
|
|
|
|
|
- public EasyExcelListener(int pageSize, EasyExcelInterface<T> consumer, Consumer<Exception> runnable) {
|
|
|
+ public EasyExcelListener(int pageSize, IHandleData<T> handleDataFun, Consumer<Exception> handleExceptionFun) {
|
|
|
this.pageSize = pageSize;
|
|
|
- this.consumer = consumer;
|
|
|
- this.runnable = runnable;
|
|
|
+ this.handleDataFun = handleDataFun;
|
|
|
+ this.handleException = handleExceptionFun;
|
|
|
list = new ArrayList<>(pageSize);
|
|
|
}
|
|
|
|
|
@@ -30,7 +30,7 @@ public class EasyExcelListener<T> extends AnalysisEventListener<T> {
|
|
|
totalLine = context.readSheetHolder().getApproximateTotalRowNumber();
|
|
|
}
|
|
|
radeLine += list.size();
|
|
|
- consumer.execute(list, totalLine, radeLine);
|
|
|
+ handleDataFun.execute(list, totalLine, radeLine);
|
|
|
list.clear();
|
|
|
}
|
|
|
}
|
|
@@ -38,16 +38,16 @@ public class EasyExcelListener<T> extends AnalysisEventListener<T> {
|
|
|
@Override
|
|
|
public void doAfterAllAnalysed(AnalysisContext context) {
|
|
|
if (list.size() > 0) {
|
|
|
- consumer.execute(list, totalLine, radeLine);
|
|
|
+ handleDataFun.execute(list, totalLine, radeLine);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
public void onException(Exception exception, AnalysisContext context) {
|
|
|
- runnable.accept(exception);
|
|
|
+ handleException.accept(exception);
|
|
|
}
|
|
|
|
|
|
- public interface EasyExcelInterface<T> {
|
|
|
+ public interface IHandleData<T> {
|
|
|
void execute(List<T> list, int totalLine, int radeLine);
|
|
|
}
|
|
|
|