數據庫的操作是以後體系開辟必弗成少的開辟部門之一,特別是在如今的年夜數據時期,數據庫尤其主要。然則你真的理解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()辦法來讀取數據。
【詳解iOS開辟中UIPickerView控件的應用辦法】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!