最近學習了j2ee,練習了用jdbc連接oracle數據庫,現在把大致的過程分享在這裏
JDBC是一種用於執行sql語句的java api。使用jdbc連接數據庫並進行操作分爲一下幾步:
1、加載jdbc驅動
2、創建連接
3、執行sql語句並獲得查詢結果集
4、顯示結果信息
5、釋放資源
接下來在代碼中一步一步的進行(我使用的是MyEclipse,建立的web項目,首先需要把oracle的jdbc驅動包複製到WEB-INF下的lib文件夾下)。在src添加一個包,在包中建立java類,代碼如下:
//引入jdbc相關的類
import java.sql.*;
public class DbUtil {
/*
*獲取連接
*
*/
public static Connection getConnection(){
//聲明連接
Connection conn=null;
//jdbc驅動名
String driverName="oracle.jdbc.driver.OracleDriver";
//所要連接的數據庫url
String url="jdbc:oracle:thin:@localhost:1521:xqf";
//用戶名和密碼
String username="drp1";
String password="drp1";
try {
//1、加載數據庫驅動
Class.forName(driverName);
//2、在數據庫和程序之間建立連接
conn=DriverManager.getConnection(url,username,password);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch(SQLException e){
e.printStackTrace();
}
return conn;
}
public static void main(String[] arg){
//建立連接對象
Connection con=DbUtil.getConnection();
//定義用戶執行sql語句的statement和結果集
Statement stmt=null;
ResultSet rs=null;
try {
//建立Statement對象,該對象可以用於執行sql語句
Statement stmt=con.createStatement();
//3、執行sql語句,獲得結果集
rs=stmt.executeQuery("select * from t_user");
while(rs.next()){
//4、打印結果中的某個字段
System.out.println(rs.getString("USER_ID"));
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
try{
//5、關閉資源
rs.close();
stmt.close();
conn.close();
}catch(Exception e){
}
}
}
}
其中需要注意的是加載jdbc驅動:
String driverName="oracle.jdbc.driver.OracleDriver";
Class.forName(driverName);
連接不同的數據庫對應不同的數據庫名稱,下面分別是odbc,mysql,oracle,sqlserver的驅動名:
再有需要解釋的就是連接數據庫的url:
String url="jdbc:oracle:thin:@localhost:1521:xqf";
url由3部分組成:<協議>:<子協議>:<子名稱>,中間用冒號分隔
協議:不管連接什麼數據庫都是 jdbc
子協議:不同的數據庫對應不同的名稱,這個例子裏是oracle:thin
子名稱:包含要連接數據的名稱、用戶名和密碼等信息