Class ExcelReader<T>
java.lang.Object
com.github.cla9.excel.reader.worker.ExcelReader<T>
- Type Parameters:
T- the type parameter
- All Implemented Interfaces:
Reader<T>
- Direct Known Subclasses:
SAXReader,WorkBookReader
public abstract class ExcelReader<T> extends java.lang.Object implements Reader<T>
The type Excel reader.
-
Field Summary
Fields Modifier and Type Field Description protected EntityParserentityParserThe Entity parser.protected java.util.Optional<java.lang.String>sheetNameTarget sheet name of excel file.protected java.lang.Class<T>tClassThe T class. -
Constructor Summary
Constructors Modifier Constructor Description protectedExcelReader(java.lang.Class<T> tClass)Instantiates a new Excel reader.ExcelReader(java.lang.Class<T> tClass, ExcelMetaModel excelMetaModel)Instantiates a new Excel reader.ExcelReader(java.lang.Class<T> tClass, EntityParser entityParser, EntityInstantiator<T> entityGenerator)Instantiates a new Excel reader.protectedExcelReader(java.lang.Class<T> tClass, java.lang.String sheetName)Instantiates a new Excel reader.ExcelReader(java.lang.Class<T> tClass, java.lang.String sheetName, ExcelMetaModel excelMetaModel)Instantiates a new Excel reader. -
Method Summary
Modifier and Type Method Description protected ExceptionRow<T>createExceptionRow(ExcelRowException ex)Create exception row exception row.ExcelResultSet<T>createResultSet(org.springframework.web.multipart.MultipartFile multipartFile)Create result set excel result set.ExcelResultSet<T>createResultSet(org.springframework.web.multipart.MultipartFile multipartFile, boolean forceMergedHeaderRefresh)Create result set excel result set.protected abstract ExcelResultSet<T>createResultSet(org.springframework.web.multipart.MultipartFile multipartFile, ExcelMetaModel metadata, boolean forceMergedHeaderRefresh)Create result set excel result set.protected <R> TinjectValue(RowHandler<R> rowHandler, java.util.List<java.lang.String> excelFileHeaderNames)Inject value t.voidparse(org.springframework.web.multipart.MultipartFile multipartFile, java.util.function.Consumer<T> onSuccessConsumer, java.util.function.Consumer<ExcelRowException> onErrorConsumer)Parse.voidparse(org.springframework.web.multipart.MultipartFile multipartFile, java.util.function.Consumer<T> onSuccessConsumer, java.util.function.Consumer<ExcelRowException> onErrorConsumer, boolean forceMergedHeaderRefresh)Parse.protected abstract voidparseFile(org.springframework.web.multipart.MultipartFile multipartFile, ExcelMetaModel excelMetaModel, java.util.function.Consumer<T> onSuccessConsumer, java.util.function.Consumer<ExcelRowException> onErrorConsumer, boolean forceMergedHeaderRefresh)Parse file.
-
Field Details
-
tClass
The T class. -
entityParser
The Entity parser. -
sheetName
protected final java.util.Optional<java.lang.String> sheetNameTarget sheet name of excel file.
-
-
Constructor Details
-
ExcelReader
public ExcelReader(java.lang.Class<T> tClass, EntityParser entityParser, EntityInstantiator<T> entityGenerator)Instantiates a new Excel reader.- Parameters:
tClass- the t classentityParser- the entity parserentityGenerator- the entity generator
-
ExcelReader
Instantiates a new Excel reader.- Parameters:
tClass- the t class
-
ExcelReader
Instantiates a new Excel reader.- Parameters:
tClass- target class typesheetName- excel sheet name
-
ExcelReader
Instantiates a new Excel reader.- Parameters:
tClass- the t classexcelMetaModel- the excel meta model
-
ExcelReader
public ExcelReader(java.lang.Class<T> tClass, java.lang.String sheetName, ExcelMetaModel excelMetaModel)Instantiates a new Excel reader.- Parameters:
tClass- the t classsheetName- the worksheet nameexcelMetaModel- the excel meta model
-
-
Method Details
-
createResultSet
public ExcelResultSet<T> createResultSet(org.springframework.web.multipart.MultipartFile multipartFile)Description copied from interface:ReaderCreate result set excel result set.- Specified by:
createResultSetin interfaceReader<T>- Parameters:
multipartFile- the multipart file- Returns:
- the excel result set
-
createResultSet
public ExcelResultSet<T> createResultSet(org.springframework.web.multipart.MultipartFile multipartFile, boolean forceMergedHeaderRefresh)Description copied from interface:ReaderCreate result set excel result set.- Specified by:
createResultSetin interfaceReader<T>- Parameters:
multipartFile- the multipart fileforceMergedHeaderRefresh- the force merged header refresh- Returns:
- the excel result set
-
parse
public void parse(org.springframework.web.multipart.MultipartFile multipartFile, java.util.function.Consumer<T> onSuccessConsumer, java.util.function.Consumer<ExcelRowException> onErrorConsumer)Description copied from interface:ReaderParse. -
parse
public void parse(org.springframework.web.multipart.MultipartFile multipartFile, java.util.function.Consumer<T> onSuccessConsumer, java.util.function.Consumer<ExcelRowException> onErrorConsumer, boolean forceMergedHeaderRefresh)Description copied from interface:ReaderParse. -
createResultSet
protected abstract ExcelResultSet<T> createResultSet(org.springframework.web.multipart.MultipartFile multipartFile, ExcelMetaModel metadata, boolean forceMergedHeaderRefresh)Create result set excel result set.- Parameters:
multipartFile- the multipart filemetadata- the metadataforceMergedHeaderRefresh- the force merged header refresh- Returns:
- the excel result set
-
parseFile
protected abstract void parseFile(org.springframework.web.multipart.MultipartFile multipartFile, ExcelMetaModel excelMetaModel, java.util.function.Consumer<T> onSuccessConsumer, java.util.function.Consumer<ExcelRowException> onErrorConsumer, boolean forceMergedHeaderRefresh)Parse file.- Parameters:
multipartFile- the multipart fileexcelMetaModel- the excel meta modelonSuccessConsumer- the on success consumeronErrorConsumer- the on error consumerforceMergedHeaderRefresh- the force merged header refresh
-
injectValue
protected <R> T injectValue(RowHandler<R> rowHandler, java.util.List<java.lang.String> excelFileHeaderNames) throws ExcelRowExceptionInject value t.- Type Parameters:
R- the type parameter- Parameters:
rowHandler- the row handlerexcelFileHeaderNames- the excel file header names- Returns:
- the t
- Throws:
ExcelRowException- the excel row exception
-
createExceptionRow
Create exception row exception row.- Parameters:
ex- the ex- Returns:
- the exception row
-