diff options
Diffstat (limited to 'spring-jdbc/src/main/java/org/springframework/jdbc/support')
4 files changed, 267 insertions, 250 deletions
diff --git a/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/ResultSetWrappingSqlRowSet.java b/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/ResultSetWrappingSqlRowSet.java index 514ea9b7..83fb15c1 100644 --- a/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/ResultSetWrappingSqlRowSet.java +++ b/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/ResultSetWrappingSqlRowSet.java @@ -31,12 +31,11 @@ import java.util.Map; import org.springframework.jdbc.InvalidResultSetAccessException; /** - * Default implementation of Spring's {@link SqlRowSet} interface. + * The default implementation of Spring's {@link SqlRowSet} interface, wrapping a + * {@link java.sql.ResultSet}, catching any {@link SQLException}s and translating + * them to a corresponding Spring {@link InvalidResultSetAccessException}. * - * <p>This implementation wraps a {@code javax.sql.ResultSet}, catching any SQLExceptions - * and translating them to the appropriate Spring {@link InvalidResultSetAccessException}. - * - * <p>The passed-in ResultSets should already be disconnected if the SqlRowSet is supposed + * <p>The passed-in ResultSet should already be disconnected if the SqlRowSet is supposed * to be usable in a disconnected fashion. This means that you will usually pass in a * {@code javax.sql.rowset.CachedRowSet}, which implements the ResultSet interface. * @@ -213,11 +212,11 @@ public class ResultSetWrappingSqlRowSet implements SqlRowSet { } /** - * @see java.sql.ResultSet#getDate(int, java.util.Calendar) + * @see java.sql.ResultSet#getDate(int) */ - public Date getDate(int columnIndex, Calendar cal) throws InvalidResultSetAccessException { + public Date getDate(int columnIndex) throws InvalidResultSetAccessException { try { - return this.resultSet.getDate(columnIndex, cal); + return this.resultSet.getDate(columnIndex); } catch (SQLException se) { throw new InvalidResultSetAccessException(se); @@ -225,31 +224,32 @@ public class ResultSetWrappingSqlRowSet implements SqlRowSet { } /** - * @see java.sql.ResultSet#getDate(int) + * @see java.sql.ResultSet#getDate(String) */ - public Date getDate(int columnIndex) throws InvalidResultSetAccessException { + public Date getDate(String columnLabel) throws InvalidResultSetAccessException { + return getDate(findColumn(columnLabel)); + } + + /** + * @see java.sql.ResultSet#getDate(int, Calendar) + */ + public Date getDate(int columnIndex, Calendar cal) throws InvalidResultSetAccessException { try { - return this.resultSet.getDate(columnIndex); + return this.resultSet.getDate(columnIndex, cal); } catch (SQLException se) { throw new InvalidResultSetAccessException(se); } } + /** - * @see java.sql.ResultSet#getDate(String, java.util.Calendar) + * @see java.sql.ResultSet#getDate(String, Calendar) */ public Date getDate(String columnLabel, Calendar cal) throws InvalidResultSetAccessException { return getDate(findColumn(columnLabel), cal); } /** - * @see java.sql.ResultSet#getDate(String) - */ - public Date getDate(String columnLabel) throws InvalidResultSetAccessException { - return getDate(findColumn(columnLabel)); - } - - /** * @see java.sql.ResultSet#getDouble(int) */ public double getDouble(int columnIndex) throws InvalidResultSetAccessException { @@ -286,6 +286,7 @@ public class ResultSetWrappingSqlRowSet implements SqlRowSet { public float getFloat(String columnLabel) throws InvalidResultSetAccessException { return getFloat(findColumn(columnLabel)); } + /** * @see java.sql.ResultSet#getInt(int) */ @@ -325,11 +326,11 @@ public class ResultSetWrappingSqlRowSet implements SqlRowSet { } /** - * @see java.sql.ResultSet#getObject(int, java.util.Map) + * @see java.sql.ResultSet#getObject(int) */ - public Object getObject(int i, Map<String, Class<?>> map) throws InvalidResultSetAccessException { + public Object getObject(int columnIndex) throws InvalidResultSetAccessException { try { - return this.resultSet.getObject(i, map); + return this.resultSet.getObject(columnIndex); } catch (SQLException se) { throw new InvalidResultSetAccessException(se); @@ -337,11 +338,18 @@ public class ResultSetWrappingSqlRowSet implements SqlRowSet { } /** - * @see java.sql.ResultSet#getObject(int) + * @see java.sql.ResultSet#getObject(String) */ - public Object getObject(int columnIndex) throws InvalidResultSetAccessException { + public Object getObject(String columnLabel) throws InvalidResultSetAccessException { + return getObject(findColumn(columnLabel)); + } + + /** + * @see java.sql.ResultSet#getObject(int, Map) + */ + public Object getObject(int columnIndex, Map<String, Class<?>> map) throws InvalidResultSetAccessException { try { - return this.resultSet.getObject(columnIndex); + return this.resultSet.getObject(columnIndex, map); } catch (SQLException se) { throw new InvalidResultSetAccessException(se); @@ -349,20 +357,13 @@ public class ResultSetWrappingSqlRowSet implements SqlRowSet { } /** - * @see java.sql.ResultSet#getObject(String, java.util.Map) + * @see java.sql.ResultSet#getObject(String, Map) */ - public Object getObject(String columnLabel, Map<String, Class<?>> map) throws InvalidResultSetAccessException { + public Object getObject(String columnLabel, Map<String, Class<?>> map) throws InvalidResultSetAccessException { return getObject(findColumn(columnLabel), map); } /** - * @see java.sql.ResultSet#getObject(String) - */ - public Object getObject(String columnLabel) throws InvalidResultSetAccessException { - return getObject(findColumn(columnLabel)); - } - - /** * @see java.sql.ResultSet#getShort(int) */ public short getShort(int columnIndex) throws InvalidResultSetAccessException { @@ -401,18 +402,6 @@ public class ResultSetWrappingSqlRowSet implements SqlRowSet { } /** - * @see java.sql.ResultSet#getTime(int, java.util.Calendar) - */ - public Time getTime(int columnIndex, Calendar cal) throws InvalidResultSetAccessException { - try { - return this.resultSet.getTime(columnIndex, cal); - } - catch (SQLException se) { - throw new InvalidResultSetAccessException(se); - } - } - - /** * @see java.sql.ResultSet#getTime(int) */ public Time getTime(int columnIndex) throws InvalidResultSetAccessException { @@ -425,13 +414,6 @@ public class ResultSetWrappingSqlRowSet implements SqlRowSet { } /** - * @see java.sql.ResultSet#getTime(String, java.util.Calendar) - */ - public Time getTime(String columnLabel, Calendar cal) throws InvalidResultSetAccessException { - return getTime(findColumn(columnLabel), cal); - } - - /** * @see java.sql.ResultSet#getTime(String) */ public Time getTime(String columnLabel) throws InvalidResultSetAccessException { @@ -439,11 +421,11 @@ public class ResultSetWrappingSqlRowSet implements SqlRowSet { } /** - * @see java.sql.ResultSet#getTimestamp(int, java.util.Calendar) + * @see java.sql.ResultSet#getTime(int, Calendar) */ - public Timestamp getTimestamp(int columnIndex, Calendar cal) throws InvalidResultSetAccessException { + public Time getTime(int columnIndex, Calendar cal) throws InvalidResultSetAccessException { try { - return this.resultSet.getTimestamp(columnIndex, cal); + return this.resultSet.getTime(columnIndex, cal); } catch (SQLException se) { throw new InvalidResultSetAccessException(se); @@ -451,6 +433,13 @@ public class ResultSetWrappingSqlRowSet implements SqlRowSet { } /** + * @see java.sql.ResultSet#getTime(String, Calendar) + */ + public Time getTime(String columnLabel, Calendar cal) throws InvalidResultSetAccessException { + return getTime(findColumn(columnLabel), cal); + } + + /** * @see java.sql.ResultSet#getTimestamp(int) */ public Timestamp getTimestamp(int columnIndex) throws InvalidResultSetAccessException { @@ -463,17 +452,29 @@ public class ResultSetWrappingSqlRowSet implements SqlRowSet { } /** - * @see java.sql.ResultSet#getTimestamp(String, java.util.Calendar) + * @see java.sql.ResultSet#getTimestamp(String) */ - public Timestamp getTimestamp(String columnLabel, Calendar cal) throws InvalidResultSetAccessException { - return getTimestamp(findColumn(columnLabel), cal); + public Timestamp getTimestamp(String columnLabel) throws InvalidResultSetAccessException { + return getTimestamp(findColumn(columnLabel)); } /** - * @see java.sql.ResultSet#getTimestamp(String) + * @see java.sql.ResultSet#getTimestamp(int, Calendar) */ - public Timestamp getTimestamp(String columnLabel) throws InvalidResultSetAccessException { - return getTimestamp(findColumn(columnLabel)); + public Timestamp getTimestamp(int columnIndex, Calendar cal) throws InvalidResultSetAccessException { + try { + return this.resultSet.getTimestamp(columnIndex, cal); + } + catch (SQLException se) { + throw new InvalidResultSetAccessException(se); + } + } + + /** + * @see java.sql.ResultSet#getTimestamp(String, Calendar) + */ + public Timestamp getTimestamp(String columnLabel, Calendar cal) throws InvalidResultSetAccessException { + return getTimestamp(findColumn(columnLabel), cal); } diff --git a/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/ResultSetWrappingSqlRowSetMetaData.java b/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/ResultSetWrappingSqlRowSetMetaData.java index 31d9d9e1..ababa338 100644 --- a/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/ResultSetWrappingSqlRowSetMetaData.java +++ b/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/ResultSetWrappingSqlRowSetMetaData.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2012 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,17 +22,16 @@ import java.sql.SQLException; import org.springframework.jdbc.InvalidResultSetAccessException; /** - * Default implementation of Spring's SqlRowSetMetaData interface. - * Used by ResultSetWrappingSqlRowSet. + * The default implementation of Spring's {@link SqlRowSetMetaData} interface, wrapping + * a {@link java.sql.ResultSetMetaData} instance, catching any {@link SQLException}s + * and translating them to a corresponding Spring {@link InvalidResultSetAccessException}. * - * <p>This implementation wraps a {@code javax.sql.ResultSetMetaData} - * instance, catching any SQLExceptions and translating them to the - * appropriate Spring DataAccessException. + * <p>Used by {@link ResultSetWrappingSqlRowSet}. * * @author Thomas Risberg * @author Juergen Hoeller * @since 1.2 - * @see ResultSetWrappingSqlRowSet#getMetaData + * @see ResultSetWrappingSqlRowSet#getMetaData() */ public class ResultSetWrappingSqlRowSetMetaData implements SqlRowSetMetaData { diff --git a/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/SqlRowSet.java b/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/SqlRowSet.java index 88900de9..eca73405 100644 --- a/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/SqlRowSet.java +++ b/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/SqlRowSet.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2012 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -27,17 +27,17 @@ import java.util.Map; import org.springframework.jdbc.InvalidResultSetAccessException; /** - * Mirror interface for {@code javax.sql.RowSet}, representing - * disconnected {@code java.sql.ResultSet} data. + * Mirror interface for {@link javax.sql.RowSet}, representing + * disconnected {@link java.sql.ResultSet} data. * - * <p>The main difference to the standard JDBC RowSet is that an SQLException - * is never thrown here. This allows a SqlRowSet to be used without having - * to deal with checked exceptions. A SqlRowSet will throw Spring's - * {@code org.springframework.jdbc.InvalidResultSetAccessException} + * <p>The main difference to the standard JDBC RowSet is that a + * {@link java.sql.SQLException} is never thrown here. This allows a + * SqlRowSet to be used without having to deal with checked exceptions. + * A SqlRowSet will throw Spring's {@link InvalidResultSetAccessException} * instead (when appropriate). * - * <p>Note: This interface extends the {@code java.io.Serializable} - * marker interface. Implementations, which typically hold disconnected data, + * <p>Note: This interface extends the {@code java.io.Serializable} marker + * interface. Implementations, which typically hold disconnected data, * are encouraged to be actually serializable (as far as possible). * * @author Thomas Risberg @@ -51,15 +51,15 @@ import org.springframework.jdbc.InvalidResultSetAccessException; public interface SqlRowSet extends Serializable { /** - * Retrieves the meta data (number, types and properties for the columns) - * of this row set. + * Retrieve the meta data, i.e. number, types and properties + * for the columns of this row set. * @return a corresponding SqlRowSetMetaData instance * @see java.sql.ResultSet#getMetaData() */ SqlRowSetMetaData getMetaData(); /** - * Maps the given column label to its column index. + * Map the given column label to its column index. * @param columnLabel the name of the column * @return the column index for the given column label * @see java.sql.ResultSet#findColumn(String) @@ -70,8 +70,8 @@ public interface SqlRowSet extends Serializable { // RowSet methods for extracting data values /** - * Retrieves the value of the indicated column in the current row as - * an BigDecimal object. + * Retrieve the value of the indicated column in the current row + * as a BigDecimal object. * @param columnIndex the column index * @return an BigDecimal object representing the column value * @see java.sql.ResultSet#getBigDecimal(int) @@ -79,17 +79,17 @@ public interface SqlRowSet extends Serializable { BigDecimal getBigDecimal(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * an BigDecimal object. + * Retrieve the value of the indicated column in the current row + * as a BigDecimal object. * @param columnLabel the column label * @return an BigDecimal object representing the column value - * @see java.sql.ResultSet#getBigDecimal(java.lang.String) + * @see java.sql.ResultSet#getBigDecimal(String) */ BigDecimal getBigDecimal(String columnLabel) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a boolean. + * Retrieve the value of the indicated column in the current row + * as a boolean. * @param columnIndex the column index * @return a boolean representing the column value * @see java.sql.ResultSet#getBoolean(int) @@ -97,17 +97,17 @@ public interface SqlRowSet extends Serializable { boolean getBoolean(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a boolean. + * Retrieve the value of the indicated column in the current row + * as a boolean. * @param columnLabel the column label * @return a boolean representing the column value - * @see java.sql.ResultSet#getBoolean(java.lang.String) + * @see java.sql.ResultSet#getBoolean(String) */ boolean getBoolean(String columnLabel) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a byte. + * Retrieve the value of the indicated column in the current row + * as a byte. * @param columnIndex the column index * @return a byte representing the column value * @see java.sql.ResultSet#getByte(int) @@ -115,55 +115,55 @@ public interface SqlRowSet extends Serializable { byte getByte(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a byte. + * Retrieve the value of the indicated column in the current row + * as a byte. * @param columnLabel the column label * @return a byte representing the column value - * @see java.sql.ResultSet#getByte(java.lang.String) + * @see java.sql.ResultSet#getByte(String) */ byte getByte(String columnLabel) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a Date object. + * Retrieve the value of the indicated column in the current row + * as a Date object. * @param columnIndex the column index - * @param cal the Calendar to use in constructing the Date * @return a Date object representing the column value - * @see java.sql.ResultSet#getDate(int, java.util.Calendar) + * @see java.sql.ResultSet#getDate(int) */ - Date getDate(int columnIndex, Calendar cal) throws InvalidResultSetAccessException; + Date getDate(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a Date object. - * @param columnIndex the column index + * Retrieve the value of the indicated column in the current row + * as a Date object. + * @param columnLabel the column label * @return a Date object representing the column value - * @see java.sql.ResultSet#getDate(int) + * @see java.sql.ResultSet#getDate(String) */ - Date getDate(int columnIndex) throws InvalidResultSetAccessException; + Date getDate(String columnLabel) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a Date object. - * @param columnLabel the column label + * Retrieve the value of the indicated column in the current row + * as a Date object. + * @param columnIndex the column index * @param cal the Calendar to use in constructing the Date * @return a Date object representing the column value - * @see java.sql.ResultSet#getDate(java.lang.String, java.util.Calendar) + * @see java.sql.ResultSet#getDate(int, Calendar) */ - Date getDate(String columnLabel, Calendar cal) throws InvalidResultSetAccessException; + Date getDate(int columnIndex, Calendar cal) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a Date object. + * Retrieve the value of the indicated column in the current row + * as a Date object. * @param columnLabel the column label + * @param cal the Calendar to use in constructing the Date * @return a Date object representing the column value - * @see java.sql.ResultSet#getDate(java.lang.String) + * @see java.sql.ResultSet#getDate(String, Calendar) */ - Date getDate(String columnLabel) throws InvalidResultSetAccessException; + Date getDate(String columnLabel, Calendar cal) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a Double object. + * Retrieve the value of the indicated column in the current row + * as a Double object. * @param columnIndex the column index * @return a Double object representing the column value * @see java.sql.ResultSet#getDouble(int) @@ -171,17 +171,17 @@ public interface SqlRowSet extends Serializable { double getDouble(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a Double object. + * Retrieve the value of the indicated column in the current row + * as a Double object. * @param columnLabel the column label * @return a Double object representing the column value - * @see java.sql.ResultSet#getDouble(java.lang.String) + * @see java.sql.ResultSet#getDouble(String) */ double getDouble(String columnLabel) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a float. + * Retrieve the value of the indicated column in the current row + * as a float. * @param columnIndex the column index * @return a float representing the column value * @see java.sql.ResultSet#getFloat(int) @@ -189,17 +189,17 @@ public interface SqlRowSet extends Serializable { float getFloat(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a float. + * Retrieve the value of the indicated column in the current row + * as a float. * @param columnLabel the column label * @return a float representing the column value - * @see java.sql.ResultSet#getFloat(java.lang.String) + * @see java.sql.ResultSet#getFloat(String) */ float getFloat(String columnLabel) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * an int. + * Retrieve the value of the indicated column in the current row + * as an int. * @param columnIndex the column index * @return an int representing the column value * @see java.sql.ResultSet#getInt(int) @@ -207,17 +207,17 @@ public interface SqlRowSet extends Serializable { int getInt(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * an int. + * Retrieve the value of the indicated column in the current row + * as an int. * @param columnLabel the column label * @return an int representing the column value - * @see java.sql.ResultSet#getInt(java.lang.String) + * @see java.sql.ResultSet#getInt(String) */ int getInt(String columnLabel) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a long. + * Retrieve the value of the indicated column in the current row + * as a long. * @param columnIndex the column index * @return a long representing the column value * @see java.sql.ResultSet#getLong(int) @@ -225,55 +225,55 @@ public interface SqlRowSet extends Serializable { long getLong(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a long. + * Retrieve the value of the indicated column in the current row + * as a long. * @param columnLabel the column label * @return a long representing the column value - * @see java.sql.ResultSet#getLong(java.lang.String) + * @see java.sql.ResultSet#getLong(String) */ long getLong(String columnLabel) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * an Object. + * Retrieve the value of the indicated column in the current row + * as an Object. * @param columnIndex the column index - * @param map a Map object containing the mapping from SQL types to Java types * @return a Object representing the column value - * @see java.sql.ResultSet#getObject(int, java.util.Map) + * @see java.sql.ResultSet#getObject(int) */ - Object getObject(int columnIndex, Map<String, Class<?>> map) throws InvalidResultSetAccessException; + Object getObject(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * an Object. - * @param columnIndex the column index + * Retrieve the value of the indicated column in the current row + * as an Object. + * @param columnLabel the column label * @return a Object representing the column value - * @see java.sql.ResultSet#getObject(int) + * @see java.sql.ResultSet#getObject(String) */ - Object getObject(int columnIndex) throws InvalidResultSetAccessException; + Object getObject(String columnLabel) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * an Object. - * @param columnLabel the column label + * Retrieve the value of the indicated column in the current row + * as an Object. + * @param columnIndex the column index * @param map a Map object containing the mapping from SQL types to Java types * @return a Object representing the column value - * @see java.sql.ResultSet#getObject(java.lang.String, java.util.Map) + * @see java.sql.ResultSet#getObject(int, Map) */ - Object getObject(String columnLabel, Map<String, Class<?>> map) throws InvalidResultSetAccessException; + Object getObject(int columnIndex, Map<String, Class<?>> map) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * an Object. + * Retrieve the value of the indicated column in the current row + * as an Object. * @param columnLabel the column label + * @param map a Map object containing the mapping from SQL types to Java types * @return a Object representing the column value - * @see java.sql.ResultSet#getObject(java.lang.String) + * @see java.sql.ResultSet#getObject(String, Map) */ - Object getObject(String columnLabel) throws InvalidResultSetAccessException; + Object getObject(String columnLabel, Map<String, Class<?>> map) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a short. + * Retrieve the value of the indicated column in the current row + * as a short. * @param columnIndex the column index * @return a short representing the column value * @see java.sql.ResultSet#getShort(int) @@ -281,17 +281,17 @@ public interface SqlRowSet extends Serializable { short getShort(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a short. + * Retrieve the value of the indicated column in the current row + * as a short. * @param columnLabel the column label * @return a short representing the column value - * @see java.sql.ResultSet#getShort(java.lang.String) + * @see java.sql.ResultSet#getShort(String) */ short getShort(String columnLabel) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a String. + * Retrieve the value of the indicated column in the current row + * as a String. * @param columnIndex the column index * @return a String representing the column value * @see java.sql.ResultSet#getString(int) @@ -299,27 +299,17 @@ public interface SqlRowSet extends Serializable { String getString(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a String. + * Retrieve the value of the indicated column in the current row + * as a String. * @param columnLabel the column label * @return a String representing the column value - * @see java.sql.ResultSet#getString(java.lang.String) + * @see java.sql.ResultSet#getString(String) */ String getString(String columnLabel) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a Time object. - * @param columnIndex the column index - * @param cal the Calendar to use in constructing the Date - * @return a Time object representing the column value - * @see java.sql.ResultSet#getTime(int, java.util.Calendar) - */ - Time getTime(int columnIndex, Calendar cal) throws InvalidResultSetAccessException; - - /** - * Retrieves the value of the indicated column in the current row as - * a Time object. + * Retrieve the value of the indicated column in the current row + * as a Time object. * @param columnIndex the column index * @return a Time object representing the column value * @see java.sql.ResultSet#getTime(int) @@ -327,37 +317,37 @@ public interface SqlRowSet extends Serializable { Time getTime(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a Time object. + * Retrieve the value of the indicated column in the current row + * as a Time object. * @param columnLabel the column label - * @param cal the Calendar to use in constructing the Date * @return a Time object representing the column value - * @see java.sql.ResultSet#getTime(java.lang.String, java.util.Calendar) + * @see java.sql.ResultSet#getTime(String) */ - Time getTime(String columnLabel, Calendar cal) throws InvalidResultSetAccessException; + Time getTime(String columnLabel) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a Time object. - * @param columnLabel the column label + * Retrieve the value of the indicated column in the current row + * as a Time object. + * @param columnIndex the column index + * @param cal the Calendar to use in constructing the Date * @return a Time object representing the column value - * @see java.sql.ResultSet#getTime(java.lang.String) + * @see java.sql.ResultSet#getTime(int, Calendar) */ - Time getTime(String columnLabel) throws InvalidResultSetAccessException; + Time getTime(int columnIndex, Calendar cal) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a Timestamp object. - * @param columnIndex the column index + * Retrieve the value of the indicated column in the current row + * as a Time object. + * @param columnLabel the column label * @param cal the Calendar to use in constructing the Date - * @return a Timestamp object representing the column value - * @see java.sql.ResultSet#getTimestamp(int, java.util.Calendar) + * @return a Time object representing the column value + * @see java.sql.ResultSet#getTime(String, Calendar) */ - Timestamp getTimestamp(int columnIndex, Calendar cal) throws InvalidResultSetAccessException; + Time getTime(String columnLabel, Calendar cal) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a Timestamp object. + * Retrieve the value of the indicated column in the current row + * as a Timestamp object. * @param columnIndex the column index * @return a Timestamp object representing the column value * @see java.sql.ResultSet#getTimestamp(int) @@ -365,123 +355,146 @@ public interface SqlRowSet extends Serializable { Timestamp getTimestamp(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a Timestamp object. + * Retrieve the value of the indicated column in the current row + * as a Timestamp object. * @param columnLabel the column label + * @return a Timestamp object representing the column value + * @see java.sql.ResultSet#getTimestamp(String) + */ + Timestamp getTimestamp(String columnLabel) throws InvalidResultSetAccessException; + + /** + * Retrieve the value of the indicated column in the current row + * as a Timestamp object. + * @param columnIndex the column index * @param cal the Calendar to use in constructing the Date * @return a Timestamp object representing the column value - * @see java.sql.ResultSet#getTimestamp(java.lang.String, java.util.Calendar) + * @see java.sql.ResultSet#getTimestamp(int, Calendar) */ - Timestamp getTimestamp(String columnLabel, Calendar cal) throws InvalidResultSetAccessException; + Timestamp getTimestamp(int columnIndex, Calendar cal) throws InvalidResultSetAccessException; /** - * Retrieves the value of the indicated column in the current row as - * a Timestamp object. + * Retrieve the value of the indicated column in the current row + * as a Timestamp object. * @param columnLabel the column label + * @param cal the Calendar to use in constructing the Date * @return a Timestamp object representing the column value - * @see java.sql.ResultSet#getTimestamp(java.lang.String) + * @see java.sql.ResultSet#getTimestamp(String, Calendar) */ - Timestamp getTimestamp(String columnLabel) throws InvalidResultSetAccessException; + Timestamp getTimestamp(String columnLabel, Calendar cal) throws InvalidResultSetAccessException; // RowSet navigation methods /** - * Moves the cursor to the given row number in the RowSet, just after the last row. + * Move the cursor to the given row number in the row set, + * just after the last row. * @param row the number of the row where the cursor should move - * @return true if the cursor is on the RowSet, false otherwise + * @return {@code true} if the cursor is on the row set, + * {@code false} otherwise * @see java.sql.ResultSet#absolute(int) */ boolean absolute(int row) throws InvalidResultSetAccessException; /** - * Moves the cursor to the end of this RowSet. + * Move the cursor to the end of this row set. * @see java.sql.ResultSet#afterLast() */ void afterLast() throws InvalidResultSetAccessException; /** - * Moves the cursor to the front of this RowSet, just before the first row. + * Move the cursor to the front of this row set, + * just before the first row. * @see java.sql.ResultSet#beforeFirst() */ void beforeFirst() throws InvalidResultSetAccessException; /** - * Moves the cursor to the first row of this RowSet. - * @return true if the cursor is on a valid row, false otherwise + * Move the cursor to the first row of this row set. + * @return {@code true} if the cursor is on a valid row, + * {@code false} otherwise * @see java.sql.ResultSet#first() */ boolean first() throws InvalidResultSetAccessException; /** - * Retrieves the current row number. + * Retrieve the current row number. * @return the current row number * @see java.sql.ResultSet#getRow() */ int getRow() throws InvalidResultSetAccessException; /** - * Retrieves whether the cursor is after the last row of this RowSet. - * @return true if the cursor is after the last row, false otherwise + * Retrieve whether the cursor is after the last row of this row set. + * @return {@code true} if the cursor is after the last row, + * {@code false} otherwise * @see java.sql.ResultSet#isAfterLast() */ boolean isAfterLast() throws InvalidResultSetAccessException; /** - * Retrieves whether the cursor is after the first row of this RowSet. - * @return true if the cursor is after the first row, false otherwise + * Retrieve whether the cursor is before the first row of this row set. + * @return {@code true} if the cursor is before the first row, + * {@code false} otherwise * @see java.sql.ResultSet#isBeforeFirst() */ boolean isBeforeFirst() throws InvalidResultSetAccessException; /** - * Retrieves whether the cursor is on the first row of this RowSet. - * @return true if the cursor is after the first row, false otherwise + * Retrieve whether the cursor is on the first row of this row set. + * @return {@code true} if the cursor is after the first row, + * {@code false} otherwise * @see java.sql.ResultSet#isFirst() */ boolean isFirst() throws InvalidResultSetAccessException; /** - * Retrieves whether the cursor is on the last row of this RowSet. - * @return true if the cursor is after the last row, false otherwise + * Retrieve whether the cursor is on the last row of this row set. + * @return {@code true} if the cursor is after the last row, + * {@code false} otherwise * @see java.sql.ResultSet#isLast() */ boolean isLast() throws InvalidResultSetAccessException; /** - * Moves the cursor to the last row of this RowSet. - * @return true if the cursor is on a valid row, false otherwise + * Move the cursor to the last row of this row set. + * @return {@code true} if the cursor is on a valid row, + * {@code false} otherwise * @see java.sql.ResultSet#last() */ boolean last() throws InvalidResultSetAccessException; /** - * Moves the cursor to the next row. - * @return true if the new row is valid, false if there are no more rows + * Move the cursor to the next row. + * @return {@code true} if the new row is valid, + * {@code false} if there are no more rows * @see java.sql.ResultSet#next() */ boolean next() throws InvalidResultSetAccessException; /** - * Moves the cursor to the previous row. - * @return true if the new row is valid, false if it is off the RowSet + * Move the cursor to the previous row. + * @return {@code true} if the new row is valid, + * {@code false} if it is off the row set * @see java.sql.ResultSet#previous() */ boolean previous() throws InvalidResultSetAccessException; /** - * Moves the cursor a relative number f rows, either positive or negative. - * @return true if the cursor is on a row, false otherwise + * Move the cursor a relative number of rows, + * either positive or negative. + * @return {@code true} if the cursor is on a row, + * {@code false} otherwise * @see java.sql.ResultSet#relative(int) */ boolean relative(int rows) throws InvalidResultSetAccessException; /** - * Reports whether the last column read had a value of SQL {@code NULL}. - * Note that you must first call one of the getter methods and then call - * the {@code wasNull} method. - * @return true if the most recent coumn retrieved was SQL {@code NULL}, - * false otherwise + * Report whether the last column read had a value of SQL {@code NULL}. + * <p>Note that you must first call one of the getter methods + * and then call the {@code wasNull()} method. + * @return {@code true} if the most recent coumn retrieved was + * SQL {@code NULL}, {@code false} otherwise * @see java.sql.ResultSet#wasNull() */ boolean wasNull() throws InvalidResultSetAccessException; diff --git a/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/SqlRowSetMetaData.java b/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/SqlRowSetMetaData.java index b117177b..9ec1c795 100644 --- a/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/SqlRowSetMetaData.java +++ b/spring-jdbc/src/main/java/org/springframework/jdbc/support/rowset/SqlRowSetMetaData.java @@ -1,5 +1,5 @@ /* - * Copyright 2002-2012 the original author or authors. + * Copyright 2002-2014 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -19,25 +19,27 @@ package org.springframework.jdbc.support.rowset; import org.springframework.jdbc.InvalidResultSetAccessException; /** - * Meta data interface for Spring's SqlRowSet, - * analogous to {@code javax.sql.ResultSetMetaData} + * Metadata interface for Spring's {@link SqlRowSet}, analogous to JDBC's + * {@link java.sql.ResultSetMetaData}. * - * <p>The main difference to the standard JDBC RowSetMetaData is that an SQLException - * is never thrown here. This allows a SqlRowSetMetaData to be used without having - * to deal with checked exceptions. A SqlRowSetMetaData will throw Spring's - * {@code org.springframework.jdbc.InvalidResultSetAccessException} + * <p>The main difference to the standard JDBC ResultSetMetaData is that a + * {@link java.sql.SQLException} is never thrown here. This allows + * SqlRowSetMetaData to be used without having to deal with checked exceptions. + * SqlRowSetMetaData will throw Spring's {@link InvalidResultSetAccessException} * instead (when appropriate). * * @author Thomas Risberg + * @author Juergen Hoeller * @since 1.2 - * @see SqlRowSet#getMetaData + * @see SqlRowSet#getMetaData() * @see java.sql.ResultSetMetaData * @see org.springframework.jdbc.InvalidResultSetAccessException */ public interface SqlRowSetMetaData { /** - * Retrieves the catalog name of the table that served as the source for the specified column. + * Retrieve the catalog name of the table that served as the source for the + * specified column. * @param columnIndex the index of the column * @return the catalog name * @see java.sql.ResultSetMetaData#getCatalogName(int) @@ -45,7 +47,7 @@ public interface SqlRowSetMetaData { String getCatalogName(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the fully qualified class that the specified column will be mapped to. + * Retrieve the fully qualified class that the specified column will be mapped to. * @param columnIndex the index of the column * @return the class name as a String * @see java.sql.ResultSetMetaData#getColumnClassName(int) @@ -53,7 +55,7 @@ public interface SqlRowSetMetaData { String getColumnClassName(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrives the number of columns in the RowSet. + * Retrieve the number of columns in the RowSet. * @return the number of columns * @see java.sql.ResultSetMetaData#getColumnCount() */ @@ -66,7 +68,7 @@ public interface SqlRowSetMetaData { String[] getColumnNames() throws InvalidResultSetAccessException; /** - * Retrieves the maximum width of the designated column. + * Retrieve the maximum width of the designated column. * @param columnIndex the index of the column * @return the width of the column * @see java.sql.ResultSetMetaData#getColumnDisplaySize(int) @@ -99,7 +101,7 @@ public interface SqlRowSetMetaData { int getColumnType(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the DBMS-specific type name for the indicated column. + * Retrieve the DBMS-specific type name for the indicated column. * @param columnIndex the index of the column * @return the type name * @see java.sql.ResultSetMetaData#getColumnTypeName(int) @@ -107,7 +109,7 @@ public interface SqlRowSetMetaData { String getColumnTypeName(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the precision for the indicated column. + * Retrieve the precision for the indicated column. * @param columnIndex the index of the column * @return the precision * @see java.sql.ResultSetMetaData#getPrecision(int) @@ -115,7 +117,7 @@ public interface SqlRowSetMetaData { int getPrecision(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the scale of the indicated column. + * Retrieve the scale of the indicated column. * @param columnIndex the index of the column * @return the scale * @see java.sql.ResultSetMetaData#getScale(int) @@ -123,7 +125,8 @@ public interface SqlRowSetMetaData { int getScale(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the schema name of the table that served as the source for the specified column. + * Retrieve the schema name of the table that served as the source for the + * specified column. * @param columnIndex the index of the column * @return the schema name * @see java.sql.ResultSetMetaData#getSchemaName(int) @@ -131,7 +134,8 @@ public interface SqlRowSetMetaData { String getSchemaName(int columnIndex) throws InvalidResultSetAccessException; /** - * Retrieves the name of the table that served as the source for the specified column. + * Retrieve the name of the table that served as the source for the + * specified column. * @param columnIndex the index of the column * @return the name of the table * @see java.sql.ResultSetMetaData#getTableName(int) @@ -139,7 +143,7 @@ public interface SqlRowSetMetaData { String getTableName(int columnIndex) throws InvalidResultSetAccessException; /** - * Indicates whether the case of the designated column is significant. + * Indicate whether the case of the designated column is significant. * @param columnIndex the index of the column * @return true if the case sensitive, false otherwise * @see java.sql.ResultSetMetaData#isCaseSensitive(int) @@ -147,7 +151,7 @@ public interface SqlRowSetMetaData { boolean isCaseSensitive(int columnIndex) throws InvalidResultSetAccessException; /** - * Indicates whether the designated column contains a currency value. + * Indicate whether the designated column contains a currency value. * @param columnIndex the index of the column * @return true if the value is a currency value, false otherwise * @see java.sql.ResultSetMetaData#isCurrency(int) @@ -155,7 +159,7 @@ public interface SqlRowSetMetaData { boolean isCurrency(int columnIndex) throws InvalidResultSetAccessException; /** - * Indicates whether the designated column contains a signed number. + * Indicate whether the designated column contains a signed number. * @param columnIndex the index of the column * @return true if the column contains a signed number, false otherwise * @see java.sql.ResultSetMetaData#isSigned(int) |