@Override
  public void cell(String cellReference, String formattedValue) {

    // Note, POI will not invoke this method if the cell
    // is blank or if it detects there's no more data in the row.
    // So don't count on this being invoked the same number of times each
    // row. That's another reason why in above code we ensure each column header
    // is in the 'currentRowMap'.

    if (this.currentRow == HEADER_ROW) {
      this.columnHeaders.put(getColumnReference(cellReference), formattedValue);
    } else {
      String columnHeader = this.columnHeaders.get(getColumnReference(cellReference));
      this.currentRowMap.put(columnHeader, formattedValue);
    }

  }
@ Override public void cell ( String cellReference , String formattedValue ) { if ( this . currentRow == HEADER_ROW ) { this . columnHeaders . put ( getColumnReference ( cellReference ) , formattedValue ) ; } else { String columnHeader = this . columnHeaders . get ( getColumnReference ( cellReference ) ) ; this . currentRowMap . put ( columnHeader , formattedValue ) ; } }
@see org.apache.poi.xssf.eventusermodel.XSSFSheetXMLHandler.SheetContentsHandler#cell(java.lang.String,
java.lang.String)