/**
* ResultSet:结果集。封装了使用JDBC进行查询的结果。
* 1. 调用Statement对象的executeQuery(sql)方法
* 2. ResultSet返回的实际上就是一张数据表。有一个指针指向数据表的第一行的前面。
* 可以调用next()方法检测下一行是否有效。若有效,该方法返回true,且指针下移。
* 相当于Iterator对象的hasNext()和next()方法的结合体
* 3. 当指针对应到一行时,可以通过嗲用getXXX(index)或getXXX(columnName)获取
* 每一列的值。如:getInt(1),getString("name")
* 4. 关闭ResultSet
*/
public void testResultSet(){
// 获取各项记录,并打印
Connection conn = null;
Statement statement = null;
ResultSet rs = null;
try {
// 1. 获取Connection
conn = JDBCTools.getConnection();
// 2. 获取Statement
statement = conn.createStatement();
// 3. 准备SQL
String sql = "select id, username, pwd, regTime, lastLoginTime from t_user";
// 4. 执行查询,得到ResultSet
rs = statement.executeQuery(sql);
// 5. 处理ResultSet
while(rs.next()){
int id = rs.getInt(1);
String username = rs.getString(2);
String pwd = rs.getString(3);
Date regTime = rs.getDate(4);
Timestamp lastLoginTime = rs.getTimestamp(5);
System.out.println(id + "-->" + username + "-->" + pwd + "-->" + regTime + "-->" + lastLoginTime);
}
// 6. 关闭数据库资源
} catch (Exception e) {
e.printStackTrace();
} finally {
JDBCTools.release(rs, statement, conn);
}
}