1.ResultSet 结果集的引入
当我们查询数据库时,返回的是一个二维的结果集,我们这时候需要使用 ResultSet 来遍历结果集,获取每一行
的数据。
2.使用 ResultSet 遍历查询结果
几个方法
方法名称 | 说明 |
---|---|
boolean next() | 将光标从当前位置向前移一行。 |
String getString(int columnIndex) | 以 Java 编程语言中 String 的形式获取ResultSet 对象的当前行中指定列的值。 |
String getString(String columnLabel) | 以 Java 编程语言中 String 的形式获取此 ResultSet 对象的当前行中指定列的值。 |
ResultSet PreparedStatement.executeQuery()这个方法用于返回一个结果集
eg:
public static void displayDate()throws Exception
{
Connection con = util1.getCon(); //获取连接对象
String sql = "select * from t_book ;"; //sql语句
PreparedStatement prep = con.prepareStatement(sql); //预处理sql语句
ResultSet rs =prep.executeQuery(); //获取结果集
System.out.println("id bookName bookid price\n");//输出字段
while(rs.next()) //开始指向第一行的前面,每调用一次移动一行
{
int id = rs.getInt(1); //获取id,1,2,3,4,指的列数
String bookName = rs.getString(2); //获取bookName
int bookNameId = rs.getInt(3); //获取图书id
double price = rs.getDouble(4); //获取价格
System.out.println(id + " " + bookName + " " + bookNameId + " " + price); //然后输出
}
}
不过一般开发不会这么写,我们使用后一个getString方法:
public static void displayDate()throws Exception
{
Connection con = util1.getCon(); //获取连接对象
String sql = "select * from t_book ;"; //sql语句
PreparedStatement prep = con.prepareStatement(sql); //预处理sql语句
ResultSet rs =prep.executeQuery(); //获取结果集
System.out.println("id bookName bookid price\n");//输出字段
while(rs.next()) //开始指向第一行的前面,每调用一次移动一行
{
int id = rs.getInt("id"); //获取id,这个用的第二个getString方法
String bookName = rs.getString("bookName"); //获取bookName
int bookNameId = rs.getInt("bookNameId"); //获取图书id
double price = rs.getDouble("price"); //获取价格
System.out.println(id + " " + bookName + " " + bookNameId + " " + price); //然后输出
}
}