JDBC的ResultSet是什么?

在 JDBC 中,ResultSet 是一个接口,它代表数据库查询的结果。当我们执行一个 SELECT 查询时,我们可以得到一个 ResultSet 对象,然后我们可以从这个对象中取出查询结果。

ResultSet 对象维护一个游标,指向其当前的行。最初,游标位于第一行之前,调用 next() 方法可以使游标向下移动一行。当游标位于一行时,我们可以调用各种 getter 方法,如 getString(), getInt(), getBoolean() 等,来获取当前行的数据。

以下是 ResultSet 的一个基本使用示例:

// Assume stmt is a Statement object
ResultSet rs = stmt.executeQuery("SELECT username, age FROM users");

while (rs.next()) {
    String username = rs.getString("username");
    int age = rs.getInt("age");

    System.out.println("Username: " + username);
    System.out.println("Age: " + age);
}

在这个例子中,我们首先执行了一个 SELECT 查询,然后得到了一个 ResultSet 对象。然后我们通过一个 while 循环,调用 next() 方法遍历了查询结果的每一行。对于每一行,我们调用 getString()getInt() 方法来获取用户名和年龄,然后打印出来。

需要注意的是,ResultSet 对象在使用完毕后应该被关闭,以释放资源。通常,当其关联的 StatementConnection 对象被关闭时,ResultSet 也会被自动关闭。但在某些情况下,我们可能需要手动关闭它,可以通过调用其 close() 方法来实现。

发表评论

后才能评论