ResultSet接口
ResultSet接口用于保存JDBC执行查询时返回的结果集,该结果集封装在一个逻辑表格中。在ResultSet接口内部有一个指向表格数据行的游标(或指针),ResultSet对象初始化时,游标在表格的第一行之前,调用next()方法可将游标移动到下一行。如果下一行没有数据,则返回false。在应用程序中经常使用next()方法作为while循环的条件来迭代ResultSet结果集。
ResultSet接口中的常用方法如表1所示。
表1 ResultSet接口中的常用方法
方法声明 | 功能描述 |
---|---|
String getString(int columnIndex) | 用于获取指定字段的String类型的值,参数columnIndex代表字段的索引 |
String getString(String columnName) | 用于获取指定字段的String类型的值,参数columnName代表字段的名称 |
int getInt(int columnIndex) | 用于获取指定字段的int类型的值,参数columnIndex代表字段的索引 |
int getInt(String columnName) | 用于获取指定字段的int类型的值,参数columnName代表字段的名称 |
Date getDate(int columnIndex) | 用于获取指定字段的Date类型的值,参数columnIndex代表字段的索引 |
Date getDate(String columnName) | 用于获取指定字段的Date类型的值,参数columnName代表字段的名称 |
boolean next() | 将游标从当前位置向下移一行 |
boolean absolute(int row) | 将游标移动到此 ResultSet 对象的指定行 |
void afterLast() | 将游标移动到此 ResultSet 对象的末尾,即最后一行之后 |
void beforeFirst() | 将游标移动到此 ResultSet 对象的开头,即第一行之前 |
boolean previous() | 将游标移动到此 ResultSet 对象的上一行 |
boolean last() | 将游标移动到此 ResultSet 对象的最后一行 |
从表1中可以看出,ResultSet接口中定义了大量的getXxx()方法,而采用哪种getXxx()方法取决于字段的数据类型。程序既可以通过字段的名称来获取指定数据,也可以通过字段的索引来获取指定的数据,字段的索引是从1开始编号的。例如,假设数据表的第1列字段名为id,字段类型为int,那么既可以使用getInt("id")获取该列的值,也可以使用getInt(1)获取该列的值。