JDBC概念以及程式碼展示
阿新 • • 發佈:2021-07-13
JDBC概念
JDBC全稱Java Database Connectivity,即Java資料庫連線,也就是用Java語言操作資料庫,但是這是一種狹義的概念,其實,更準確的定義JDBC的概念的話,應該是這樣子的:JDBC是官方(sun公司)定義的一套操作所有關係型資料庫的規則(介面);各個資料庫廠商去實現這套介面,提供資料庫驅動jar包;我們可以使用這套介面程式設計,真正執行的程式碼是驅動jar包中的實現類。
JDBC操作資料庫流程
JDBC操作資料庫的流程一般分為以下八個步驟:
- 匯入驅動jar包;
可參考部落格:https://www.cnblogs.com/NyanKoSenSei/p/11510438.html; - 註冊驅動(載入jar包進入記憶體);
- 獲取資料庫連線物件 Connection;
- 定義需要執行的sql語句;
- 獲取sql語句的執行物件 Statement;
- 利用Statement物件執行sql語句;
- 處理結果;
- 釋放資源。
JDBC程式碼實現
首先看一下本次操作的資料庫,資料庫名為db3,裡面有四個表,本次JDBC執行的sql語句是顯示db3下的所有表,然後程式最終會返回一個int型別的資料,表示執行sql語句後影響的記錄的條數
package day04.jdbc01; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.sql.Statement; public class JDBCDemo { public static void main(String[] args) throws ClassNotFoundException, SQLException { // 1. 匯入驅動jar包 // 2. 載入jar包進入記憶體 Class.forName("com.mysql.jdbc.Driver"); // 3. 獲取資料庫連線物件 // getConnection方法的第一個引數是資料庫的連線路徑,格式為"jdbc:mysql://ip地址(域名):埠號/資料庫名稱";第二個引數是使用者名稱;第三個引數是使用者密碼 Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:4406/db3", "root", "root"); // 4. 定義需要執行的sql語句 String sql = "show tables"; // 5. 獲取執行sql語句的物件 // 注意,實際開發中使用的都是PreparedStatement物件,使用Statement物件執行靜態sql語句會存在sql注入問題,這裡主要用途是演示JDBC操作 Statement statement = connection.createStatement(); // 6. 使用Statement物件執行sql語句 int i = statement.executeUpdate(sql); // 7. 處理結果,列印返回的i System.out.println(i); // 這裡的i其實是資料庫執行操作影響的記錄數目,因為在我的db3中一共有4張表,因此返回值為4 // 8. 釋放資源 statement.close(); connection.close(); } }
程式執行結果(列印執行sql語句後影響的記錄的條數)