1.導入jar包依賴:mysql-connector-java-8.0.27.jar
2.連接數據庫!
3.無法解析類->導入java.sql.*,(將項目方言改為Mysql)
JDBC,啟動!!
public class Main {public static void main(String[] args) {//1. 通過DriverManager來獲得數據庫連接try (Connection connection = DriverManager.getConnection("連接URL","用戶名","密碼");//2. 創建一個用于執行SQL的Statement對象Statement statement = connection.createStatement()){ //注意前兩步都放在try()中,因為在最后需要釋放資源!//3. 執行SQL語句,并得到結果集ResultSet set = statement.executeQuery("select * from 表名");//4. 查看結果while (set.next()){}}catch (SQLException e){e.printStackTrace();}
//5. 釋放資源,try-with-resource語法會自動幫助我們close}
}
1. 通過DriverManager來獲得數據庫連接
當方法getConnection被調用時,DriverManager將嘗試從初始化時加載的驅動程序中找到合適的驅動程序,并創建Connection。
(由于Connection和Statement都需要執行close方法,使用try-with-resources的語法可以簡化代碼書寫)
2. 創建一個用于執行SQL的Statement對象
創建connetion(數據庫連接對象),用于向數據庫發送SQL語句的Statement對象。沒有參數的SQL語句通常使用Statement對象執行。如果同一SQL語句被多次執行,那么使用PreparedStatement對象可能會更高效。
(由于Connection和Statement都需要執行close方法,使用try-with-resources的語法可以簡化代碼書寫)
3. 執行SQL語句,并得到結果集
select語句的查詢結果存放在ResultSet對象里面。
使用JDBC查詢實例:
import java.sql.Connection;
import java.sql.*;public class Main {public static void main(String[] args) {//1. 通過DriverManager來獲得數據庫連接try (Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/JDBCtest","root","66666");//2. 創建一個用于執行SQL的Statement對象Statement statement = connection.createStatement()){ //注意前兩步都放在try()中,因為在最后需要釋放資源!//3. 執行SQL語句,并得到結果集ResultSet set = statement.executeQuery("select * from users");//4. 查看結果while (set.next()){//若結果集鏈表存在下一個結果,則指針移動System.out.println(set.getInt(1)+set.getString(2)+set.getString(3));//按表的每一列輸出結果:依次為ID\Name\PassWord}}catch (SQLException e){e.printStackTrace();}
//5. 釋放資源,try-with-resource語法會自動幫助我們close}
}
將查詢結果映射為對象
將數據庫中數據轉換為一個實體類來進行操作:
import java.sql.Connection;
import java.sql.*;class Student {Integer sid;String name;String password;public Student(Integer sid, String name, String password) {this.sid = sid;this.name = name;this.password = password;}public void say(){System.out.println("我叫:"+name+",學號為:"+sid+",我的密碼是:"+password);}
}public class Main {public static void main(String[] args) {//1. 通過DriverManager來獲得數據庫連接try (Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/experiment4","root","123456");//2. 創建一個用于執行SQL的Statement對象Statement statement = connection.createStatement()){ //注意前兩步都放在try()中,因為在最后需要釋放資源!//3. 執行SQL語句,并得到結果集ResultSet set = statement.executeQuery("select * from users");//4. 查看結果while (set.next()){Student student = new Student(set.getInt(1), set.getString(2), set.getString(3));student.say();}}catch (SQLException e){e.printStackTrace();}}
}