code: public Object getObject(final int columnIndex) throws SQLException {
          try {
              return getValueObject(columnIndex).getObject();
          } catch (ParseException e) {
              throw SQLExceptionMapper.getSQLException("Could not get object: " + e.getMessage(), e);
          }
      }
docs: <p>Gets the value of the designated column in the current row of this <code>ResultSet</code> object as an
  <code>Object</code> in the Java programming language.
  <p/>
  <p>This method will return the value of the given column as a Java object.  The type of the Java object will be
  the default Java object type corresponding to the column's SQL type, following the mapping for built-in types
  specified in the JDBC specification. If the value is an SQL <code>NULL</code>, the driver returns a Java
  <code>null</code>.
  <p/>
  <p>This method may also be used to read database-specific abstract data types.
  <p/>
  In the JDBC 2.0 API, the behavior of method <code>getObject</code> is extended to materialize data of SQL
  user-defined types.
  <p/>
  If <code>Connection.getTypeMap</code> does not throw a <code>SQLFeatureNotSupportedException</code>, then when a
  column contains a structured or distinct value, the behavior of this method is as if it were a call to:
  <code>getObject(columnIndex, this.getStatement().getConnection().getTypeMap())</code>.
  <p/>
  If <code>Connection.getTypeMap</code> does throw a <code>SQLFeatureNotSupportedException</code>, then structured
  values are not supported, and distinct values are mapped to the default Java class as determined by the
  underlying SQL type of the DISTINCT type.
  
  @param columnIndex the first column is 1, the second is 2, ...
  @return a <code>java.lang.Object</code> holding the column value
  @throws java.sql.SQLException if the columnIndex is not valid; if a database access error occurs or this method
  is called on a closed result set