1. 程式人生 > 其它 >JDBC概念以及程式碼展示

JDBC概念以及程式碼展示

JDBC概念

JDBC全稱Java Database Connectivity,即Java資料庫連線,也就是用Java語言操作資料庫,但是這是一種狹義的概念,其實,更準確的定義JDBC的概念的話,應該是這樣子的:JDBC是官方(sun公司)定義的一套操作所有關係型資料庫的規則(介面);各個資料庫廠商去實現這套介面,提供資料庫驅動jar包;我們可以使用這套介面程式設計,真正執行的程式碼是驅動jar包中的實現類。

JDBC操作資料庫流程

JDBC操作資料庫的流程一般分為以下八個步驟:

  1. 匯入驅動jar包;
    可參考部落格:https://www.cnblogs.com/NyanKoSenSei/p/11510438.html;
  2. 註冊驅動(載入jar包進入記憶體);
  3. 獲取資料庫連線物件 Connection;
  4. 定義需要執行的sql語句;
  5. 獲取sql語句的執行物件 Statement;
  6. 利用Statement物件執行sql語句;
  7. 處理結果;
  8. 釋放資源。

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語句後影響的記錄的條數)