一、ResultSet接口
当我们查询数据库时,返回的是一个二维的结果集,我们这时候需要使用 ResultSet 来遍历结果集,获取每一行 的数据。
boolean next() 将光标从当前位置向前移一行。
String getString(int columnIndex) 以 Java 编程语言中 String 的形式获取此 ResultSet 对象的当前行中指定列 的值。
/** * 遍历查询结果 * @throws Exception */ private static void listBook() throws Exception{ Connection con=dbUtil.getCon();//获取连接 String sql="select * from t_book"; PreparedStatement pstmt=con.prepareStatement(sql);//创建statement ResultSet rSet=pstmt.executeQuery(); while (rSet.next()) { int id=rSet.getInt(1);//获取第一列的值 编号id String bookName=rSet.getString(2);//获取第二列的值 图书名称bookName float price=rSet.getFloat(3);//获取第三列的值 图书价格price String author=rSet.getString(4);//获取第四列的值 图书作者author int bookTypeId=rSet.getInt(5);//获取第五列的值 图书类别bookTypeId System.out.println("图书编号:"+id+"图书名称:"+bookName +"图书作者:"+author+"图书价格:"+price+"图书类别:"+bookTypeId); System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); } } public static void main(String[] args) throws Exception { listBook(); }
String getString(String columnLabel) 以 Java 编程语言中 String 的形式获取此 ResultSet 对象的当前行中指 定列的值。
1 /** 2 * 遍历查询结果 3 * @throws Exception 4 */ 5 private static void listBook2() throws Exception{ 6 Connection con=dbUtil.getCon();//获取连接 7 String sql="select * from t_book"; 8 PreparedStatement pstmt=con.prepareStatement(sql);//创建statement 9 ResultSet rSet=pstmt.executeQuery(); 10 while (rSet.next()) { 11 int id=rSet.getInt("id");//获取第一列的值 编号id 12 String bookName=rSet.getString("bookName");//获取第二列的值 图书名称bookName 13 float price=rSet.getFloat("price");//获取第三列的值 图书价格price 14 String author=rSet.getString("author");//获取第四列的值 图书作者author 15 int bookTypeId=rSet.getInt("bookTypeId");//获取第五列的值 图书类别bookTypeId 16 System.out.println("图书编号:"+id+"图书名称:"+bookName 17 +"图书作者:"+author+"图书价格:"+price+"图书类别:"+bookTypeId); 18 System.out.println("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"); 19 } 20 } 21 public static void main(String[] args) throws Exception { 22 listBook2(); 23 }