ResultSet:结果集,封装了使用JDBC的进行查询的结果
1.调用Statement对象的executeQuery(sql)可以得到结果
2.ResultSet返回的实际上就是一张数据表,有一个指针指向数据表的第一样的前面,可以调用next()方法检测下一行是否有效,若有效该方法返回true,且指针下移,相当于Iterator对象的hasNext()和next()方法的结合体。
3.当指针对位到一行时,可以通过调用getXxx(index)或getXxx(conlumnName)获取每一列的值。
4.ResultSet也需要关闭。
public static void select(String sql) {
Connection connection=null;
Statement statement=null;
ResultSet resultset=null;
try {
//1.获取Connection
connection=getConnection();
//2.获取Statement
statement=connection.createStatement();
//3.执行查询,得到ResultSet
resultset=statement.executeQuery(sql);
while(resultset.next()) {
String id=resultset.getString(1);
String username=resultset.getString(2);
String password=resultset.getString("password");
System.out.println(id);
System.out.println(username);
System.out.println(password);
}
}catch(Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
release(resultset,statement,connection);
}
}
通过调用Statement对象的excuteQuery()方法创建该对象。
ResultSet对象以逻辑表格的形式封装了执行数据库操作的结果集,ResultSet接口由数据库厂商实现。
ResultSet对象维护了一个指向当前数据行的游标,初始的时候,游标在第一行之前,可以通过ResultSet对象的next()方法移动到下一行。
ResultSet接口的常用方法:
boolean next()
getString()
......