MySQL数据库干货_28——ResultSet的使用
ResultSet的使用
ResultSet简介
ResultSet接口的特点
ResultSet用来存放数据库查询操作获得结果集,通过对ResultSet的操作可以获取查询到的结果集数据。
注意:
ResultSet 对象中存放的并不是我们查询到的所有的结果集。它采用分块加载的方式来载入结果集数据。
ResultSet特点
- ResultSet 对象具有指向其当前数据行的指针。最初,指针被置于第一行之前。next 方法将指针移动到下一行;因为该方法在 ResultSet 对象中没有下一行时返回 false,所以可以在 while 循环中使用它来迭代结果集。
- 默认的 ResultSet 对象仅有一个向前移动的指针。因此,只能迭代它一次,并且只能按从第一行到最后一行的顺序进行。
- ResultSet 接口提供用于获取当前行检索列值的获取方法(getBoolean、getLong 等)。可以使用列的索引位置或列的名称检索值。
通过ResultSet获取查询结果
/**
* 获取结果集测试类
*/
public class ResultSetTest {
/**
* 查询所用用户
*/
public void selectUsersAll(){
Connection connection = null;
PreparedStatement ps = null;
ResultSet resultSet = null;
try{
//获取数据库连接
connection = JdbcUtils.getConnection();
//创建PreparedStatement对象
ps = connection.prepareStatement("select * from users");
//执行查询
resultSet = ps.executeQuery();
//操作ResultSet对象获取查询的结果集
while(resultSet.next()){
//获取列中的数据
int userid = resultSet.getInt("userid");
String username = resultSet.getString("username");
int userage = resultSet.getInt("USERAGE");
System.out.println(userid+" "+username+" "+userage);
}
}catch(Exception e){
e.printStackTrace();
}finally{
JdbcUtils.closeResource(resultSet,ps,connection);
}
}
}