Class ModelReader<W extends org.apache.poi.ss.usermodel.Workbook,​T>

java.lang.Object
com.github.javaxcel.in.AbstractExcelReader<W,​T>
com.github.javaxcel.in.ModelReader<W,​T>
Type Parameters:
W - excel workbook
T - type of model
All Implemented Interfaces:
ExcelReader<W,​T>

public class ModelReader<W extends org.apache.poi.ss.usermodel.Workbook,​T>
extends AbstractExcelReader<W,​T>
Excel reader for model.
  • Constructor Details

  • Method Details

    • limit

      public ModelReader<W,​T> limit​(int limit)
      Limits the number of models.
      Specified by:
      limit in interface ExcelReader<W extends org.apache.poi.ss.usermodel.Workbook,​T>
      Overrides:
      limit in class AbstractExcelReader<W extends org.apache.poi.ss.usermodel.Workbook,​T>
      Parameters:
      limit - limit for the number of models
      Returns:
      ModelReader
    • parallel

      public ModelReader<W,​T> parallel()
      Makes the conversion from imitated model into real model parallel.

      We recommend processing in parallel only when dealing with large data. The following table is a benchmark.

      
           +------------+------------+----------+
           | row \ type | sequential | parallel |
           +------------+------------+----------+
           | 10,000     | 16s        | 13s      |
           +------------+------------+----------+
           | 25,000     | 31s        | 21s      |
           +------------+------------+----------+
           | 100,000    | 2m 7s      | 1m 31s   |
           +------------+------------+----------+
           | 150,000    | 3m 28s     | 2m 1s    |
           +------------+------------+----------+
       
      Returns:
      ModelReader
    • readSheet

      protected List<T> readSheet​(org.apache.poi.ss.usermodel.Sheet sheet)
      Reads a sheet and Adds rows of the data into list.
      Specified by:
      readSheet in class AbstractExcelReader<W extends org.apache.poi.ss.usermodel.Workbook,​T>
      Parameters:
      sheet - sheet to be read
    • getNumOfColumns

      protected int getNumOfColumns​(org.apache.poi.ss.usermodel.Row row)
      Specified by:
      getNumOfColumns in class AbstractExcelReader<W extends org.apache.poi.ss.usermodel.Workbook,​T>
    • getColumnName

      protected String getColumnName​(org.apache.poi.ss.usermodel.Cell cell, int columnIndex)
      Specified by:
      getColumnName in class AbstractExcelReader<W extends org.apache.poi.ss.usermodel.Workbook,​T>