String sql="select * from student";
//查询结果集就是用下面这个方法,executeUpdate(sql)只适合增删改
rs=stat.executeQuery(sql);
// 5.处理查询结果集
// boolean flag=rs.next();
// 这里rs.next()返回的是布尔类型,while里面默认执行为true的时候循环
while(rs.next()){
// getString这个方法特点:不管数据库中的数据类型是什么,都是以String的形式取出
// jdbc中所有下标从1开始,不是从0开始
String id= rs.getString(1);
String username=rs.getString(2);
String passsword=rs.getString(3);
System.out.println(id + "," + username + "," + password);
}
// 这里也不一定非要是String类型,如果你想用int类型,那么就是 int id= rs.getInt(1);
// 括号里面最好还是跟你要取出那一列的名字, String id= rs.getString("id");
// String username=rs.getString("username");
// String passsword=rs.getString("password");
结合上一篇博客,以下就是完整的代码
package com.jdbc;
import java.sql.*;
public class text01 {
public static void main(String[] args) {
Connection conn=null;
Statement stat=null;
ResultSet rs=null;
try{
//这里要知道5.0之前的版本是com.mysql.jdbc.Driver
String driver="com.mysql.cj.jdbc.Driver";
Class.forName(driver);
String url="jdbc:mysql://localhost:3306/test01?useUnicode=true&zeroDateTimeBehavior=convertToNull&useSSL=false&serverTimezone=GMT%2B8";
String user="root";
String password="149636";
conn=DriverManager.getConnection(url,user,password);
stat=conn.createStatement();
String sql="select * from student";
rs=stat.executeQuery(sql);
// 5.处理查询结果集
while(rs.next()){
String id= rs.getString("id");
String username=rs.getString("username");
String passsword=rs.getString("password");
System.out.println(id + "," + username + "," + password);
}
} catch (SQLException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} finally {
if(rs!=null){
try{
rs.close();
}catch (SQLException e){
e.printStackTrace();
}
}
if(stat!=null){
try{
stat.close();
}catch (SQLException e){
e.printStackTrace();
}
}
if(conn!=null){
try{
conn.close();
}catch (SQLException e){
e.printStackTrace();
}
}
}
}
}