code: @Override
      public T next() {
          if (closed)
              throw new IllegalStateException("This iterator has been closed!");
          try {
              return rowMapper.mapRow(resultSet, rowNum);
          } catch (Exception e) {
              close();
              throw e instanceof DaoException ? (DaoException) e : new DaoException(e);
          } finally {
              rowNum++;
          }
      }
docs: {@inheritDoc}