Java銜接Oracle數據庫實例解析。本站提示廣大學習愛好者:(Java銜接Oracle數據庫實例解析)文章只能為提供參考,不一定能成為您想要的結果。以下是Java銜接Oracle數據庫實例解析正文
數據庫的操作是以後體系開辟必弗成少的開辟部門之一,特別是在如今的年夜數據時期,數據庫尤其主要。然則你真的理解Java與數據庫是怎樣銜接的麼?
先給年夜家一個數據庫銜接的簡略實例:
package com.java.dbtest; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; public class TestConnection implements DBTest{ public void SelectUser(){ //設定命據庫驅動,數據庫銜接地址、端口、稱號,用戶名,暗碼 String driverName="oracle.jdbc.driver.OracleDriver"; String url="jdbc:oracle:thin:@localhost:1521:BJPOWERNODE"; //test為數據庫稱號,1521為銜接數據庫的默許端口 String user="system"; //aa為用戶名 String password="bjpowernode"; //123為暗碼 PreparedStatement pstmt = null; ResultSet rs = null; //數據庫銜接對象 Connection conn = null; try { //反射Oracle數據庫驅動法式類 Class.forName(driverName); //獲得數據庫銜接 conn = DriverManager.getConnection(url, user, password); //輸入數據庫銜接 System.out.println(conn); //定制sql敕令 String sql = "select * from t_user where user_id = ?"; //創立該銜接下的PreparedStatement對象 pstmt = conn.prepareStatement(sql); //傳遞第一個參數值 root,取代第一個問號 pstmt.setString(1, "root"); //履行查詢語句,將數據保留到ResultSet對象中 rs = pstmt.executeQuery(); //將指針移到下一行,斷定rs中能否稀有據 if(rs.next()){ //輸入查詢成果 System.out.println("查詢到名為【" + rs.getString("user_id") + "】的信息,其暗碼為:" + rs.getString("password")); }else{ //輸入查詢成果 System.out.println("未查詢到用戶名為【" + rs.getString("user_id") + "】的信息"); } } catch (ClassNotFoundException e) { e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); }finally{ try{ if(rs != null){ rs.close(); } if(pstmt != null){ pstmt.close(); } if(conn != null){ conn.close(); } } catch (SQLException e) { e.printStackTrace(); } } } public static void main(String[] args){ new TestConnection().SelectUser(); } }
在main函數中,右鍵,選擇“Run as”=>"Java Application",就會運轉該法式段,在Console中,可以看到運轉成果,假如給出一串相似於“oracle.jdbc.driver.T4CConnection@7c242f04”如許的字符串,就解釋你銜接勝利了。運轉成果如圖:
上面我們來簡略剖解一下這段法式。
這段法式是Java銜接Oracle數據庫的實例,采取jdbc來完成銜接數據庫的操作,所以須要引入ojdbc14.jar。在操作前,起首得先獲得數據庫驅動類的對象,經由過程驅動對象拿到數據庫銜接對象。
個中Class.forName(driverName)就是運用類反射機制,加載驅動法式的。DriverManager 類是 JDBC 的治理層,感化於用戶和驅動法式之間。它跟蹤可用的驅動法式,並在數據庫和響應驅動法式之間樹立銜接。
普通只須要在類中直接應用辦法DriverManager.getConnection,便可樹立與數據庫的銜接
PreparedStatement 接口繼續Statement,是用來履行數據庫操作的類。PreparedStatement在屢次挪用時的效力要比Statement高許多,所以許多人都主意以PreparedStatement取代Statement。
在接上去的博文中,會具體引見一下這點《深刻 懂得 Statement 和 PreparedStatement》。PreparedStatement可以看作.net中的Command的類。
ResultSet 接口在許多說話中都湧現過,它重要來寄存查詢到的數據。每次查詢到數據後,Java說話中平日應用next()辦法來讀取數據。