實訓學習記錄(二):JAVA數據庫知識——JDBC探究

一.JDBC的使用步驟

1.根據IP端口,賬戶信息創建數據庫連接,創建連接對象,也就是Connection那個類的對象。其中在連接數據庫時,不同的數據庫有差異存在,JDBC本身不具有連接的能力,JDBC是根據數據庫類型、版本引入相關數據庫廠商提供操作的具體實現API,也就說之前說的驅動,真正在幹事的是廠商寫的實現,調用的只是它的規範。

2.定義指令,根據連接創建相應的指令對象,發送指令。我們通常使用String來保存一條數據庫指令,即用sql語句寫的指令,染後用Statement或者PrepareStatement來提交,二者其實各有千秋,對於Statement不能一棒子打死。

注:數據庫規範中,規定數據庫操作的統一指令,是sql指令。

3.接收數據庫的操作結果,在通過Statement類進行提交後,會獲得一個返回值,這個返回值通常是Result類型的,我們通過這個返回值的類型能獲得相應的返回信息。

 

二.JDBC的具體使用步驟

1.首先我們需要下載數據庫驅動,這裏我們以Mysql爲例。我們去Maven Repository下載mysql的驅動。搜索Mysql就能出來它的驅動專欄。(網址:https://mvnrepository.com/artifact/mysql/mysql-connector-java

根據相應的版本下載一個驅動,我的版本是5.7,我下了一個5.1.47,就可以使用了。 

2.下載好驅動後我們導入驅動,在eclipse中我們通過BuiltPath中的Libraries添加導入,在IDEA中,我們點file→Project Structure→Libraries中添加,在這個裏邊選擇自己的驅動下載路徑就行了。

相信聰明的你一看就知道了。

3.添加好驅動後我們就能用了,首先我們創建好我們的連接類, 我專門寫了一個獲取連接的類。裏邊有一個方法交get_link,命名不規範,大家以我爲戒,可以看出意思是得到連接。 

 Class.forName(driver),這一步叫加載驅動,在jdk8之後的java程序中已經不需要這一步了,jdk環境會根據url進行自動的適配。但是在javaweb項目中,需要這一步,我們在這裏加載的驅動是驅動包裏的核心類。關於核心驅動類,是一個叫Driver.class的類,這個類有兩個,一個是在org.git.mm.mysql中,這個包裏的Driver.class是由開源社區維護的。另一個在com.mysql.jdbc中,這個類是被oracle維護的,由於mysql後來被oracle收購了,因此驅動類就成了現在這個類。

其中Class.forName(driver)中的driver就是這個驅動類的位置,這裏我們寫"com.mysql.jdbc.Driver",也就是由oracle維護的那個。

 

DriverManager.getConnection(url,user,password)這一步是建立連接,它返回了一個連接類。這兩步都需要異常的捕獲或者異常拋出,爲了在檢查異常時能夠更好的確定異常發生的位置,我們捕獲異常。

如圖所示,如果成功獲取連接,我們將會在控制檯發現系統輸出了“成功”二字,如果沒有成功我們會得到一個異常,並且會得到一個爲空的連接類對象。

注:不得不提一下一些關鍵詞:user就是數據庫裏邊的一個用戶名,這個看想用那個用戶登陸,而密碼自然是用戶密碼。url必須說一些,url由多個部分組成,例如我的url:"jdbc:mysql://127.0.0.1:3150/student"。jdbc'後面的第一個是“mysql”,代表我鏈接的是mysql數據庫,然後是127.0.0.1,這是一個ip地址,我們大家都知道這是本機地址,爲什麼需要ip地址呢,因爲我們知道有時在連接數據庫時數據庫不一定在本地,因此有可能需要網絡通信,網絡通信首先就是要知道ip地址。ip地址後是端口號,這個端口號可以在安裝時自己改,也可以進到隱藏目錄下的mysql中去找配置文件:

 如圖熒光部分是路徑,my.ini裏邊由端口信息,可以修改。

在此可以修改,在配置文件裏還能修改連接數和線程數。連接數就是建立的Connection類對象的個數,這個個數不能過多,否則會引起宕機,後果嚴重。 

 

 

這裏我總結了JDBC的基本使用步驟以及其中的Connection類的使用,之後幾篇我會繼續總結其他知識,下一篇我會總結Statement與ResultSet的用法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章