提交 c7138ecf 编写于 作者: J jipengfei.jpf

修改代码结构,增加可维护性

上级 781150b5
......@@ -31,7 +31,7 @@ java.lang.NullPointerException
at org.apache.poi.xssf.streaming.SXSSFWorkbook.createAndRegisterSXSSFSheet(SXSSFWorkbook.java:656)
at org.apache.poi.xssf.streaming.SXSSFWorkbook.createSheet(SXSSFWorkbook.java:677)
at org.apache.poi.xssf.streaming.SXSSFWorkbook.createSheet(SXSSFWorkbook.java:83)
at com.alibaba.excel.context.GenerateContextImpl.buildCurrentSheet(GenerateContextImpl.java:93)
at com.alibaba.excel.write.context.GenerateContextImpl.buildCurrentSheet(GenerateContextImpl.java:93)
at com.alibaba.excel.write.ExcelBuilderImpl.addContent(ExcelBuilderImpl.java:53)
at com.alibaba.excel.ExcelWriter.write(ExcelWriter.java:44)
```
......@@ -51,9 +51,9 @@ org.apache.poi.openxml4j.exceptions.OLE2NotOfficeXmlFileException: The supplied
at org.apache.poi.openxml4j.opc.internal.ZipHelper.openZipStream(ZipHelper.java:229)
at org.apache.poi.openxml4j.opc.ZipPackage.<init>(ZipPackage.java:97)
at org.apache.poi.openxml4j.opc.OPCPackage.open(OPCPackage.java:342)
at com.alibaba.excel.analysis.v07.XlsxSaxAnalyser.<init>(XlsxSaxAnalyser.java:46)
at com.alibaba.excel.analysis.ExcelAnalyserImpl.getSaxAnalyser(ExcelAnalyserImpl.java:30)
at com.alibaba.excel.analysis.ExcelAnalyserImpl.analysis(ExcelAnalyserImpl.java:51)
at com.alibaba.excel.read.v07.XlsxSaxAnalyser.<init>(XlsxSaxAnalyser.java:46)
at com.alibaba.excel.read.ExcelAnalyserImpl.getSaxAnalyser(ExcelAnalyserImpl.java:30)
at com.alibaba.excel.read.ExcelAnalyserImpl.analysis(ExcelAnalyserImpl.java:51)
at com.alibaba.excel.ExcelReader.read(ExcelReader.java:55)
at read.v07.Read2007Xlsx.noModel(Read2007Xlsx.java:42)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
......@@ -100,9 +100,9 @@ org.apache.poi.poifs.filesystem.OfficeXmlFileException: The supplied data appear
at org.apache.poi.poifs.storage.HeaderBlock.<init>(HeaderBlock.java:140)
at org.apache.poi.poifs.filesystem.NPOIFSFileSystem.<init>(NPOIFSFileSystem.java:302)
at org.apache.poi.poifs.filesystem.POIFSFileSystem.<init>(POIFSFileSystem.java:87)
at com.alibaba.excel.analysis.v03.XlsSaxAnalyser.<init>(XlsSaxAnalyser.java:55)
at com.alibaba.excel.analysis.ExcelAnalyserImpl.getSaxAnalyser(ExcelAnalyserImpl.java:27)
at com.alibaba.excel.analysis.ExcelAnalyserImpl.analysis(ExcelAnalyserImpl.java:51)
at com.alibaba.excel.read.v03.XlsSaxAnalyser.<init>(XlsSaxAnalyser.java:55)
at com.alibaba.excel.read.ExcelAnalyserImpl.getSaxAnalyser(ExcelAnalyserImpl.java:27)
at com.alibaba.excel.read.ExcelAnalyserImpl.analysis(ExcelAnalyserImpl.java:51)
at com.alibaba.excel.ExcelReader.read(ExcelReader.java:55)
at read.v03.XLS2003FunctionTest.testExcel2003NoModel(XLS2003FunctionTest.java:31)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
......
......@@ -3,10 +3,10 @@ package com.alibaba.excel;
import java.io.InputStream;
import java.util.List;
import com.alibaba.excel.analysis.ExcelAnalyser;
import com.alibaba.excel.analysis.ExcelAnalyserImpl;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.ExcelAnalyser;
import com.alibaba.excel.read.ExcelAnalyserImpl;
import com.alibaba.excel.read.context.AnalysisContext;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.support.ExcelTypeEnum;
......
package com.alibaba.excel.parameter;
import java.io.InputStream;
import com.alibaba.excel.support.ExcelTypeEnum;
/**
* 方便使用废弃Excel解析时候入参,直接将ExcelTypeEnum、InputStream、customContent传入{@link com.alibaba.excel.ExcelReader}的构造器
*
* @author jipengfei
*/
@Deprecated
public class AnalysisParam {
/**
* @see ExcelTypeEnum
*/
private ExcelTypeEnum excelTypeEnum;
/**
* file in
*/
private InputStream in;
/**
* user defined param to listener use
*/
private Object customContent;
public AnalysisParam(InputStream in, ExcelTypeEnum excelTypeEnum, Object customContent) {
this.in = in;
this.excelTypeEnum = excelTypeEnum;
this.customContent = customContent;
}
public ExcelTypeEnum getExcelTypeEnum() {
return excelTypeEnum;
}
public void setExcelTypeEnum(ExcelTypeEnum excelTypeEnum) {
this.excelTypeEnum = excelTypeEnum;
}
public Object getCustomContent() {
return customContent;
}
public void setCustomContent(Object customContent) {
this.customContent = customContent;
}
public InputStream getIn() {
return in;
}
public void setIn(InputStream in) {
this.in = in;
}
}
package com.alibaba.excel.parameter;
import java.io.OutputStream;
import com.alibaba.excel.support.ExcelTypeEnum;
/**
* 为方便使用废弃该入参。直接将outputStream,type传入{@link com.alibaba.excel.ExcelWriter}的构造器即可
*
* @author jipengfei
*/
@Deprecated
public class ExcelWriteParam {
/**
* 文件输出流
*/
private OutputStream outputStream;
/**
* Excel类型
*/
private ExcelTypeEnum type;
public ExcelWriteParam(OutputStream outputStream, ExcelTypeEnum type) {
this.outputStream = outputStream;
this.type = type;
}
public OutputStream getOutputStream() {
return outputStream;
}
public void setOutputStream(OutputStream outputStream) {
this.outputStream = outputStream;
}
public ExcelTypeEnum getType() {
return type;
}
public void setType(ExcelTypeEnum type) {
this.type = type;
}
}
package com.alibaba.excel.analysis;
package com.alibaba.excel.read;
import java.io.InputStream;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.event.AnalysisEventRegisterCenter;
import com.alibaba.excel.event.OneRowAnalysisFinishEvent;
import com.alibaba.excel.read.context.AnalysisContext;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.read.event.AnalysisEventRegisterCenter;
import com.alibaba.excel.read.event.OneRowAnalysisFinishEvent;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.support.ExcelTypeEnum;
......
package com.alibaba.excel.analysis;
package com.alibaba.excel.read;
import java.io.InputStream;
import java.util.List;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.support.ExcelTypeEnum;
......
package com.alibaba.excel.analysis;
package com.alibaba.excel.read;
import java.io.InputStream;
import java.util.List;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.context.AnalysisContextImpl;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.context.AnalysisContext;
import com.alibaba.excel.read.context.AnalysisContextImpl;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.modelbuild.ModelBuildEventListener;
import com.alibaba.excel.read.modelbuild.ModelBuildEventListener;
import com.alibaba.excel.support.ExcelTypeEnum;
/**
......
package com.alibaba.excel.analysis;
package com.alibaba.excel.read;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import com.alibaba.excel.analysis.BaseSaxAnalyser;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.OneRowAnalysisFinishEvent;
import com.alibaba.excel.exception.ExcelAnalysisException;
import com.alibaba.excel.read.context.AnalysisContext;
import com.alibaba.excel.read.event.OneRowAnalysisFinishEvent;
import com.alibaba.excel.read.exception.ExcelAnalysisException;
import com.alibaba.excel.metadata.Sheet;
import org.apache.poi.hssf.eventusermodel.EventWorkbookBuilder;
......
package com.alibaba.excel.analysis;
package com.alibaba.excel.read;
import java.io.File;
import java.io.FileInputStream;
......@@ -13,11 +13,11 @@ import java.util.Locale;
import javax.xml.parsers.ParserConfigurationException;
import com.alibaba.excel.analysis.v07.RowHandler;
import com.alibaba.excel.analysis.v07.XmlParserFactory;
import com.alibaba.excel.analysis.v07.XMLTempFile;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.exception.ExcelAnalysisException;
import com.alibaba.excel.read.v07.RowHandler;
import com.alibaba.excel.read.v07.XmlParserFactory;
import com.alibaba.excel.read.v07.XMLTempFile;
import com.alibaba.excel.read.context.AnalysisContext;
import com.alibaba.excel.read.exception.ExcelAnalysisException;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.util.FileUtil;
......
package com.alibaba.excel.context;
package com.alibaba.excel.read.context;
import java.io.InputStream;
import java.util.List;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.metadata.BaseRowModel;
import com.alibaba.excel.metadata.ExcelHeadProperty;
import com.alibaba.excel.metadata.Sheet;
......@@ -26,7 +26,7 @@ public interface AnalysisContext {
/**
* 返回当前Sheet
*
* @return current analysis sheet
* @return current read sheet
*/
Sheet getCurrentSheet();
......
package com.alibaba.excel.context;
package com.alibaba.excel.read.context;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.exception.ExcelAnalysisException;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.read.exception.ExcelAnalysisException;
import com.alibaba.excel.metadata.BaseRowModel;
import com.alibaba.excel.metadata.ExcelHeadProperty;
import com.alibaba.excel.metadata.Sheet;
......
package com.alibaba.excel.event;
package com.alibaba.excel.read.event;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.read.context.AnalysisContext;
/**
* 监听Excel解析每行数据
......@@ -14,15 +14,15 @@ import com.alibaba.excel.context.AnalysisContext;
public abstract class AnalysisEventListener<T> {
/**
* when analysis one row trigger invoke function
* when read one row trigger invoke function
*
* @param object one row data
* @param context analysis context
* @param context read context
*/
public abstract void invoke(T object, AnalysisContext context);
/**
* if have something to do after all analysis
* if have something to do after all read
*
* @param context context
*/
......
package com.alibaba.excel.exception;
package com.alibaba.excel.read.exception;
/**
* Excel解析时候封装的异常
......
package com.alibaba.excel.modelbuild;
package com.alibaba.excel.read.modelbuild;
import java.util.List;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.exception.ExcelGenerateException;
import com.alibaba.excel.read.context.AnalysisContext;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.write.exception.ExcelGenerateException;
import com.alibaba.excel.metadata.ExcelColumnProperty;
import com.alibaba.excel.metadata.ExcelHeadProperty;
import com.alibaba.excel.util.TypeUtil;
......
package com.alibaba.excel.analysis.v07;
package com.alibaba.excel.read.v07;
import java.util.Arrays;
import java.util.List;
import com.alibaba.excel.annotation.FieldType;
import com.alibaba.excel.constant.ExcelXmlConstants;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventRegisterCenter;
import com.alibaba.excel.event.OneRowAnalysisFinishEvent;
import com.alibaba.excel.util.ExcelXmlConstants;
import com.alibaba.excel.read.context.AnalysisContext;
import com.alibaba.excel.read.event.AnalysisEventRegisterCenter;
import com.alibaba.excel.read.event.OneRowAnalysisFinishEvent;
import com.alibaba.excel.util.PositionUtils;
import org.apache.poi.xssf.model.SharedStringsTable;
......@@ -15,11 +15,11 @@ import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
import static com.alibaba.excel.constant.ExcelXmlConstants.CELL_VALUE_TAG;
import static com.alibaba.excel.constant.ExcelXmlConstants.CELL_VALUE_TAG_1;
import static com.alibaba.excel.constant.ExcelXmlConstants.DIMENSION;
import static com.alibaba.excel.constant.ExcelXmlConstants.DIMENSION_REF;
import static com.alibaba.excel.constant.ExcelXmlConstants.ROW_TAG;
import static com.alibaba.excel.util.ExcelXmlConstants.CELL_VALUE_TAG;
import static com.alibaba.excel.util.ExcelXmlConstants.CELL_VALUE_TAG_1;
import static com.alibaba.excel.util.ExcelXmlConstants.DIMENSION;
import static com.alibaba.excel.util.ExcelXmlConstants.DIMENSION_REF;
import static com.alibaba.excel.util.ExcelXmlConstants.ROW_TAG;
/**
* @author jipengfei
......
package com.alibaba.excel.analysis.v07;
package com.alibaba.excel.read.v07;
import java.io.File;
import java.security.SecureRandom;
......
package com.alibaba.excel.analysis.v07;
package com.alibaba.excel.read.v07;
import java.io.IOException;
import java.io.InputStream;
......
......@@ -4,8 +4,8 @@ import java.io.IOException;
import java.io.OutputStream;
import java.util.List;
import com.alibaba.excel.context.GenerateContext;
import com.alibaba.excel.context.GenerateContextImpl;
import com.alibaba.excel.write.context.GenerateContext;
import com.alibaba.excel.write.context.GenerateContextImpl;
import com.alibaba.excel.metadata.ExcelColumnProperty;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.metadata.Table;
......
package com.alibaba.excel.context;
package com.alibaba.excel.write.context;
import java.io.OutputStream;
......@@ -17,7 +17,7 @@ public interface GenerateContext {
/**
* 返回当前sheet
* @return current analysis sheet
* @return current read sheet
*/
Sheet getCurrentSheet();
......
package com.alibaba.excel.context;
package com.alibaba.excel.write.context;
import java.io.OutputStream;
import java.util.List;
......
package com.alibaba.excel.exception;
package com.alibaba.excel.write.exception;
/**
* 生成Excel封装的异常
......
......@@ -9,8 +9,8 @@ import java.util.ArrayList;
import java.util.List;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.context.AnalysisContext;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.metadata.Sheet;
/**
......
......@@ -4,7 +4,7 @@ import java.io.IOException;
import java.io.InputStream;
import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.support.ExcelTypeEnum;
......
......@@ -4,7 +4,7 @@ import java.io.IOException;
import java.io.InputStream;
import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.support.ExcelTypeEnum;
......
......@@ -7,7 +7,7 @@ import java.util.List;
import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.support.ExcelTypeEnum;
......
......@@ -4,7 +4,7 @@ import java.io.IOException;
import java.io.InputStream;
import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.support.ExcelTypeEnum;
......
......@@ -10,7 +10,7 @@ import java.util.List;
import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.support.ExcelTypeEnum;
......
......@@ -4,7 +4,7 @@ import java.io.IOException;
import java.io.InputStream;
import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.support.ExcelTypeEnum;
......
......@@ -7,8 +7,8 @@ import java.util.Collections;
import java.util.List;
import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.context.AnalysisContext;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.metadata.Sheet;
import com.alibaba.excel.support.ExcelTypeEnum;
......
......@@ -4,8 +4,8 @@ import java.util.ArrayList;
import java.util.List;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.context.AnalysisContext;
import com.alibaba.excel.read.event.AnalysisEventListener;
/**
* @author jipengfei
......
......@@ -4,8 +4,8 @@ import java.util.ArrayList;
import java.util.List;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.alibaba.excel.read.context.AnalysisContext;
import com.alibaba.excel.read.event.AnalysisEventListener;
import com.alibaba.excel.metadata.BaseRowModel;
import com.alibaba.excel.metadata.Sheet;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册