您好,登錄后才能下訂單哦!
小編給大家分享一下jdbc如何連接數(shù)據(jù)庫(kù),希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
1、加載驅(qū)動(dòng)
在連接數(shù)據(jù)庫(kù)之前,需要加載數(shù)據(jù)庫(kù)的驅(qū)動(dòng)到JVM(Java虛擬機(jī)),這需要通過java.lang.Class類的靜態(tài)方法forName(String className)實(shí)現(xiàn).
例如:
//加載Oracle的驅(qū)動(dòng) try{ Class.forName("oracle.jdbc.OracleDriver"); }catch(ClassNotFoundException e){ System.out.println("找不到程序驅(qū)動(dòng)類,加載驅(qū)動(dòng)失敗!"); e.printStackTrace(); }
加載成功后,會(huì)將驅(qū)動(dòng)類的實(shí)例注冊(cè)到DriverManager類中。
2、創(chuàng)建數(shù)據(jù)庫(kù)的連接
想連接數(shù)據(jù)庫(kù),需要向java.sql.DriverManager請(qǐng)求并獲得Connection
對(duì)象,該對(duì)象就代表一個(gè)數(shù)據(jù)庫(kù)的連接。
使用DriverManager的getConnection(url,uname,upass)
傳入數(shù)據(jù)庫(kù)的路徑,用戶名,密碼獲得一個(gè)連接
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.31.50:8080:orcl","uname","upass");
3、創(chuàng)建一個(gè)Statement
要執(zhí)行SQL語(yǔ)句,必須獲得java.sql.Statement實(shí)例,Statement實(shí)例分為以下3種類型:
1.執(zhí)行靜態(tài)語(yǔ)句,通常通過Statement實(shí)例實(shí)現(xiàn)。
Statement st = conn.createStatement();
2.執(zhí)行動(dòng)態(tài)語(yǔ)句,通常通過PreparedStatement實(shí)現(xiàn)。
PreparedStatement ps = conn.prepareStatement(sql);
3.執(zhí)行數(shù)據(jù)庫(kù)存儲(chǔ)過程.通常通過CallableStatement實(shí)現(xiàn)
CallableStatement cs = conn.prepareCall("{CALL demoSp(?,?)}");
4、執(zhí)行sql語(yǔ)句
ResultSet executeQuery(sql)
適用于遍歷多個(gè)結(jié)果,插入集合,返回一個(gè)結(jié)果集,可以用.next對(duì)該對(duì)象進(jìn)行遍歷,使用getString("字段名")獲取字段值
int executeUpdate(sql)
適用于Update,insert或delete語(yǔ)句以及sqlDDL語(yǔ)句,例如建表和刪表等等,返回被改變的條數(shù)
5、關(guān)閉JDBC對(duì)象
關(guān)閉順序要和聲明順序相反
1.關(guān)閉記錄集
2.關(guān)閉聲明
3.關(guān)閉連接對(duì)象
if(rs != null){ rs.close(); }
看完了這篇文章,相信你對(duì)jdbc如何連接數(shù)據(jù)庫(kù)有了一定的了解,想了解更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。