今天這篇文章來詳細說說Java語言如何連線資料庫,jdbc影片學習教程主要內容:
1、Java語言如何連線資料庫
2、講解對資料庫中的資料進行增刪改查操作
3、闡述了介面在開發中的真正作用,JDBC規範制定的背景,JDBC程式設計六部曲,JDBC事務,JDBC批處理,SQL注入,行級鎖等
適合人群:
學習過Java程式設計基礎以及資料庫的同學。
JDBC學習教程:https://www。bilibili。com/video/BV1Bt41137iB
什麼是JDBC?
Java DataBase Connectivity 在java語言中編寫sql語句,對mysql資料庫中的資料進行CRUD操作。
JDBC就是Java資料庫連線,說白了就是用Java語言來操作資料庫。原來我們操作資料庫是在控制檯使用SQL語句來操作資料庫,JDBC是用Java語言向資料庫傳送SQL語句。
JDBC本質是什麼?
java。sql。*;這個包下都是JDBC的介面,SUN公司制定的!
JDBC是體現“介面作用”的非常經典的例子。
JDBC降低了耦合度,提高了擴充套件力。
對於java程式設計師來說,不需要關心資料庫是哪個品牌。只要面向JDBC介面程式設計就行!
JDBC整個程式的結構當中有三波人?
第一波:SUN公司,負責制定JDBC介面。這些介面已經寫好了,在java.sql.*;
第二波:java.sql.*下面的所有介面都要有實現類,這些實現類是資料庫廠家編寫的。
我們連線的是mysql資料庫,mysql資料庫廠家的實現類在哪裡呢?
mysql-connector-java-5。1。23-bin。jar
jar包中很多。class位元組碼檔案,這是mysql資料庫廠家寫的介面實現!
注意:如果連線的是oracle資料庫,你需要從網上下載oracle的jar包。
mysql-connector-java-5。1。23-bin。jar 這個jar包有一個專業的術語,大家記住就行:mysql的驅動。如果是oracle的jar,被稱為oracle的驅動。
第三波:我們java程式設計師,面向JDBC介面寫程式碼就行!
JDBC開發之前的準備工作
mysql的驅動jar包,需要配置到classpath當中嗎?
mysql-connector-java-5。1。23-bin。jar裡是位元組碼,是class檔案。
Java虛擬機器的類載入器會去載入class檔案,類載入器怎麼能夠找到這些class檔案呢?
classpath沒有配置的情況下,預設從當前路徑下載入class。
classpath如果配置死了,例如:classpath=D:\abc,則表示固定只從d:\abc目錄下找class
classpath=。;D:\course\04-JDBC\resources\MySql Connector Java 5。1。23\mysql-connector-java-5。1。23-bin。jar
. 代表什麼?
當前路徑。
以上的classpath什麼意思?
類載入器從當前路徑下載入class,如果當前路徑下沒找到,則去D:\course\04-JDBC\resources\MySql Connector Java 5。1。23\mysql-connector-java-5。1。23-bin。jar找class檔案。
jar包需要解壓嗎?
不需要解壓,java虛擬機器的類載入器有這個能力找到class檔案。
實現一個登入功能
第一步:提供一個輸入的介面,可以讓使用者輸入使用者名稱和密碼。
第二步:底層資料庫當中需要有一張使用者表,使用者表中儲存了使用者資訊。
第三步:當java程式接收到使用者名稱和密碼的時候,連線資料庫驗證使用者名稱和密碼。
驗證透過,表示登入成功,驗證失敗,表示登入失敗。
Statement主要是進行sql語句的拼接。PreparedStatement可以避免sql注入,主要進行傳值。
JDBC的事務問題
conn。setAutoCommit(false);
conn。commit();
conn。rollback();