日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Java学习之JDBC实现简单的CRUD(mysql数据库)

發布時間:2025/3/20 数据库 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java学习之JDBC实现简单的CRUD(mysql数据库) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

  • 1. JDBC概述
  • 2. 前期準備
  • 3. CRUD的實現
    • 3.2. mysql的CRUD語句
      • 3.2.1. 查詢
      • 3.2.2. 插入:
      • 3.2.3. 更新:
      • 3.2.4. 刪除:
    • 3.3. 操作簡述
    • 3.4. 實現代碼
  • 參考資料

1. JDBC概述

JDBC(Java DataBase Connectivity, java數據庫連接)是一種用于執行SQL語句的Java API,可以為多種關系數據庫提供統一訪問,它由一組用Java語言編寫的類和接口組成。(注意:JDBC是人為制定的一種規范,而不是一種實現)

如下圖所示,有了JDBC我們就可以通過JDBC去加載不同數據庫廠商的驅動,實現對不同數據庫的操作,而不用針對不同數據庫再編寫相應的程序,使程序擁有良好的可移植性。

2. 前期準備

數據庫:mysql 5.6
IDE:Eclipse IDE for Enterprise Java Developers

因為需要連接mysql數據庫,這里要用到mysql-connector-java-5.1.28-bin.jar包,Maven項目可以直接添加依賴。由于是學習的緣故,這里用到的包相對會比較舊。

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.28</version> </dependency>

3. CRUD的實現

這些功能實現其實很簡單,主要包含以下步驟:

  • 注冊數據庫驅動
  • 獲取數據庫的連接
  • 獲取傳輸對象
  • 用傳輸對象傳輸sql語句到數據庫中執行,獲取結果集對象
  • 遍歷結果集獲取需要的數據(只有查詢才會返回結果集)
  • 關閉資源
  • 由上面的步驟可以看出其實大部分操作都是套路型的(花里胡哨),核心操作還是我們對傳輸sql語句到數據庫中執行,本質上我們本知道知道相應操作的sql語句就可以完成。

    3.2. mysql的CRUD語句

    雖然知道sql語句是核心,但是如果平時不常用的話,很容易就會忘記了。現在先來復習一下mysql簡單的增刪查改操作。

    3.2.1. 查詢

    SELECT column_name,column_name FROM table_name WHERE column_name operator value;

    3.2.2. 插入:

    插入操作主要有以下兩種寫法:

    第一種形式無需指定要插入數據的列名,只需提供被插入的值即可:

    INSERT INTO table_name VALUES (value1,value2,value3,...);

    第二種形式需要指定列名及被插入的值:

    INSERT INTO table_name (column1,column2,column3,...) VALUES (value1,value2,value3,...);

    3.2.3. 更新:

    # 更新表中已經存在的元素 UPDATE table_name SET column1=value1,column2=value2,... WHERE some_column=some_value;

    3.2.4. 刪除:

    # 根據條件刪除表中已經存在的元素 DELETE FROM table_name WHERE some_column=some_value;

    3.3. 操作簡述

    我們第一步要獲取到數據庫的連接:

    • 首先需要注冊數據庫的驅動,這里用到Class.forName()方法,參數是數據庫驅動的類型,如果是mysql數據庫的話傳入的是"com.mysql.jdbc.Driver"。
    • 接著就是連接到數據庫了,我們需要傳入數據庫的地址,用戶名和密碼。這里需要簡單解釋一下數據庫地址的寫法:
      • 一般格式:jdbc:數據庫類型://ip:port/數據庫名稱。比如我們要連接本地一個叫做mydb1的數據庫,地址就寫為:jdbc:mysql://localhost:3306/mydb1
      • 當ip地址和端口號為本地地址和數據庫默認端口號時,可以省略不寫。例如上面的數據庫地址可以簡寫為:jdbc:mysql://localhost:3306/mydb1
    //1.注冊數據庫驅動 Class.forName(DriverType); //2.獲取數據庫的連接 Connection conn = DriverManager.getConnection(url, user, password);

    成功連接之后就可以獲取傳輸器Statement對象,利用該對象傳輸sql語句對數據進行操作了。

    • Statement接口主要用于在已經建立連接的基礎上向數據庫發送SQL語句。
    • ResultSet接口類似于一個臨時表,用來暫時存放數據庫查詢操作獲得的結果集。
    //3.獲取傳輸器對象 Statement state = conn.createStatement(); //4.傳輸sql語句到數據庫中執行,獲取結果集對象 ResultSet res = res = state.executeQuery(sql);

    3.4. 實現代碼

    由于操作都比較重復,這里只演示查詢的操作。如果進行其他操作,只要更改相應的sql語句。下面的代碼封裝得也不是很好,可以考慮以下優化:

    • 由于連接和關閉資源操作都比較重復,我們可以把它們封裝成一個靜態的JDBCUtils。
    • 我們可以把像驅動的類型、數據庫地址、用戶名和密碼這些信息都寫入配置文件,連接的時候再從配置文件中讀取。
    public class JdbcCRUD {private static Connection conn = null;private static Statement state = null;private static ResultSet res = null;private static void find() {try {//1.注冊數據庫驅動Class.forName("com.mysql.jdbc.Driver");//2.獲取數據庫的連接conn = DriverManager.getConnection("jdbc:mysql:///mydb1", "root", "123456");//3.獲取傳輸器對象state = conn.createStatement();//4.傳輸sql語句到數據庫中執行,獲取結果集對象res = state.executeQuery(" select * from user ");//5.遍歷結果集獲取需要的數據while (res.next()) {int id = res.getInt("id");String name = res.getString("username");String password = res.getString("password");System.out.println(id + "," + name + "," + password);}} catch (Exception e) {e.printStackTrace();} finally {//6.關閉資源if (res != null) {try {res.close();} catch (Exception e) {e.printStackTrace();} finally {res = null;}}if (state != null) {try {state.close();} catch (Exception e) {e.printStackTrace();} finally {state = null;}}if (conn != null) {try {conn.close();} catch (Exception e) {e.printStackTrace();} finally {conn = null;}}} } }

    參考資料

  • https://www.cnblogs.com/xujingyang/p/6477210.html
  • https://www.runoob.com/sql/sql-tutorial.html
  • 總結

    以上是生活随笔為你收集整理的Java学习之JDBC实现简单的CRUD(mysql数据库)的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。