第一個JDBC程序
轉自:http://www.javaresearch.org/article/9581.htm
本篇通過一個簡單的數據庫應用的例子告訴你如何編寫你的第一個JDBC程序。
一、JDBC簡介
相信在微軟平臺上開發過應用程序的朋友一定對ODBC不會陌生,ODBC是一種用C語言開發的API,通過它,你可以訪問不同數據庫平臺上的數據,目前ODBC已經成為Windows環境下訪問數據庫的事實上的標準,也是一種基本方法。但是,由于ODBC的設計過于復雜,造成它很難對外擴展。JDBC是SUN開發的一種用來進行數據庫訪問的API,它借鑒了ODBC的的某些特點而沒有它的復雜性,給數據庫開發帶來了極大的便利性。同時,JDBC還提供了對現存數據庫API(比如ODBC)的調用,使得Java應用程序可以訪問任何支持ODBC的數據庫管理系統。
二、開始
下面這個簡單的程序演示了如何在java中連接、打開和查詢一個數據庫。本例中以mysql為數據庫平臺。
- import java.sql.*; ;
- public class JDBCDemo{
- public static void main(String[] args) {
- String driver="com.mysql.jdbc.Driver"; //驅動程序
- String url="localhost/jive"; //數據庫服務器地址及數據庫名
- Connection con=null;
- Statement st;
- ResultSet rs;
- try { //(1)
- Class.forName(driver).newInstance();
- } catch (Exception ex) {
- // 在這進行錯誤處理
- }
- try{ //(2)
- con=DriverManager.getConnection(url,"test","test");
- st=con.createStatement();
- rs=st.executeQuery("Select * from jiveForums");
- while(rs.next()){ //查詢結果處理
- System.out.println("ID="+rs.getString(1));
- System.out.println("Name="+rs.getString(2));
- }
- }catch(Exception e){
- e.printStackTrace();
- }finally{
- if(con==null)return;
- try{ //(3)
- con.close();
- }catch(Exception e){
- e.printStackTrace();
- }
- }
- }
- }
程序的第一句導入我們需要用到的JDBC API,為了方便,我以*來導入在sql中定義的所有包,你也可以只指定你用到的包,比如:java.sql.Connection等。
在主函數中定義的兩個字符串分別是驅動程序名和數據庫服務器地址及數據庫名。我在這里使用的是mysql數據庫,所以我用的是mysql驅動程序,不同的數據庫用不同的驅動程序,如果你用的不是mysql,請替換此行。
服務器地址是你安裝數據庫的主機的IP,如果在本機,你也可以用"localhost"來連接。數據庫名是你已經在數據庫系統中建立過的,這里是test.接著在標識為(1)的try塊中裝載驅動程序。這一步是為驅動程序來裝載自己,然后讓驅動程序管理器來進行管理,在(2)的try塊中,從驅動程序管理器中取得一個連接,第一個引數已經說過,第二個引數是數據庫中的用戶名,最后一個是口令。接著創建一個Statement對象來執行查詢,查詢結果將返回一個記錄集,在這里就是rs。在接下來的while循環中來處理查詢結果,在這只是簡單的打印出來。
在finally塊中,將執行連接的關閉,如果在前面沒有正確得到一個連接,將直接返回。
好了,修改這個程序以適應你的平臺,然后執行。怎么樣連接數據庫就這么簡單。
三、注意事項
1 在上面這個程序中,請注意不要寫錯驅動程序名,如果出現找不到驅動程序的錯誤,請檢查你的驅動程序是否在類搜索路徑即CLASSPATH中,
一般你下載的驅動程序可能是以.jar為擴展名,那么你要把此文件包含在CLASSPATH中,比如我用的mysql.jar,那么在claspath中有:c:"driver"mysql.jar。
2 數據庫服務器IP要填準確,如果在本機,請直接使用localhost,用戶名和口令是你用來操作數據庫的用戶和口令,不要認為是操作系統的用戶名和口令。
3 最后要注意,用完一個連接后要及時關閉,養成好的習慣。
posted on 2008-06-23 22:26 edog 閱讀(227) 評論(0) 編輯 收藏 所屬分類: 數據庫