1)什么是JDBC
JDBC(JavaDatabaseConnectivity)就是Java數(shù)據(jù)庫連接,說白了就是用Java語言來操作數(shù)據(jù)庫。原來我們操作數(shù)據(jù)庫是在控制臺使用SQL語句來操作數(shù)據(jù)庫,JDBC是用Java語言向數(shù)據(jù)庫發(fā)送SQL語句。
2)JDBC原理
JDBC是接口,而JDBC驅(qū)動才是接口的實現(xiàn),沒有驅(qū)動無法完成數(shù)據(jù)庫連接!每個數(shù)據(jù)庫廠商都有自己的驅(qū)動,用來連接自己公司的數(shù)據(jù)庫。
當(dāng)然還有第三方公司專門為某一數(shù)據(jù)庫提供驅(qū)動,這樣的驅(qū)動往往不是開源免費的!
JDBC的開發(fā)步驟
1)注冊驅(qū)動
注冊驅(qū)動就只有一句話:Class.forName(“com.mysql.jdbc.Driver”)
有時間的小伙伴自己去查一下資料吧~
2)獲取連接
獲取連接的也只有一句代碼:DriverManager.getConnection(url,username,password)。
其中username和password是你登錄數(shù)據(jù)庫的用戶名和密碼。
url是用來找到數(shù)據(jù)庫地址。
mysql的url為:
jdbc:mysql://localhost:3306/mysql_2。
JDBC規(guī)定url的格式由三部分組成,每個部分中間使用冒號分隔。
第一部分是jdbc,這是固定的;
第二部分是數(shù)據(jù)庫名稱,那么連接mysql數(shù)據(jù)庫,第二部分就是mysql;
第三部分是由數(shù)據(jù)庫廠商規(guī)定的,我們需要了解每個數(shù)據(jù)庫廠商的要求,mysql的第三部分分別由數(shù)據(jù)庫服務(wù)器的IP地址(localhost)、端口號(3306),以及需要連接的數(shù)據(jù)庫的名稱組成。
還可以在url中添加參數(shù)如下:
jdbc:mysql://localhost:3306/mysql_2?useUnicode=true&characterEncoding=UTF8
useUnicode參數(shù)指定這個連接數(shù)據(jù)庫的過程中,使用的字節(jié)集是Unicode字節(jié)集;
characherEncoding參數(shù)指定穿上連接數(shù)據(jù)庫的過程中,使用的字節(jié)集編碼為UTF-8編碼。
注意:
mysql中指定UTF-8編碼是給出的是UTF8,而不是UTF-8。要小心了!
3)獲取SQl語句的執(zhí)行對象
在得到Connectoin之后,說明已經(jīng)與數(shù)據(jù)庫連接上了,下面是通過Connection獲取Statement對象的代碼:
Statementst=con.createStatement();
Statement是用來向數(shù)據(jù)庫發(fā)送要執(zhí)行的SQL語句的!
執(zhí)行SQL語句:
executeUpdate()
執(zhí)行insert、update、delete語句(DML語句)。
executeQuery()
執(zhí)行select語句(DQL語句)。
execute()方法的返回值是boolean類型的。
執(zhí)行select語句返回true,需要使用getResultSet()獲取查詢結(jié)果。
執(zhí)行其他語句返回false,需要使用getUpdateCount()獲得影響的行數(shù)。
4)處理結(jié)果集
在ResultSet類中提供了一系列的getXXX()方法,比較常用的方法有:
getObject(intcol),獲得任意對象
getString(intcol),獲得字符串
getInt(intcol),獲得整形
getDouble(intcol),獲得雙精度浮點型
5)釋放資源
與IO流一樣,使用后的資源都需要關(guān)閉!關(guān)閉的順序是先得到的后關(guān)閉,后得到的先關(guān)閉。
rs.close();
stmt.close();
con.close();
上面的這些內(nèi)容看的有點蒙
那么現(xiàn)在操作一下:
1)導(dǎo)入mysql數(shù)據(jù)庫的驅(qū)動jar包:
mysql-connector-java-5.1.39-bin.jar;
按照上面介紹的步驟編寫代碼:
現(xiàn)在來測試一下代碼
數(shù)據(jù)庫相關(guān)視頻教程
oracle數(shù)據(jù)庫教程:http://www.bjpowernode.com/v22/
數(shù)據(jù)庫plsql教程:http://www.bjpowernode.com/v23/
jdbc數(shù)據(jù)庫教程:http://www.bjpowernode.com/v24/
數(shù)據(jù)庫mysql教程:http://www.bjpowernode.com/v21
Java實戰(zhàn)項目視頻之egov項目視頻教程【免費下載】:http://www.bjpowernode.com/v83/
Java學(xué)生成績管理系統(tǒng)視頻教程【免費下載】:http://www.bjpowernode.com/v51/
以上就是天津卓眾教育Java培訓(xùn)機構(gòu)小編介紹的“Java數(shù)據(jù)庫基礎(chǔ)教程JDBC入門”的內(nèi)容,希望對大家有幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為你服務(wù)。
相關(guān)內(nèi)容
Java編程學(xué)習(xí):MySQL數(shù)據(jù)庫的學(xué)習(xí)路線
2020年Java數(shù)據(jù)庫筆試題大全
Java數(shù)據(jù)庫入門學(xué)習(xí),mysql書籍推薦
學(xué)習(xí)Java數(shù)據(jù)庫增刪查改通用方法
Java學(xué)習(xí):數(shù)據(jù)庫學(xué)習(xí)條件查詢和排序