一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - 將Java程序與數據庫進行連接的操作方法

將Java程序與數據庫進行連接的操作方法

2020-01-09 14:16goldensun JAVA教程

這篇文章主要介紹了將Java程序與數據庫進行連接的操作方法,是Java入門學習中的基礎知識,需要的朋友可以參考下

一個網絡關系數據庫應用系統是一個三層次結構。客戶機與服務器采用網絡連接,客戶機端應用程序按通信協議與服務器端的數據庫程序通信;數據庫服務程序通過SQL命令與數據庫管理系統通信。

Java程序與數據庫連接方法有兩種。一種是使用JDBC-ODBC橋接器與數據庫連接,一種是用純Java的JDBC驅動程序實現與數據庫連接。
使用JDBC-ODBC 橋接器與數據庫連接

Java程序使用JDBC-ODBC 橋接器與數據庫連接,Java程序與數據庫通信的過程是:
先由數據庫應用程序向ODBC驅動管理器發出API調用,ODBC驅動管理器將這個調用轉換成向數據庫管理系統的ODBC驅動程序調用,數據庫管理系統又將這個調用轉換成對操作系統的數據輸入/輸出調用。最后,操作系統從數據庫中得到實際數據逐級返回。

數據庫編程首先要設置數據源,在ODBC中設置數據源的步驟如下:
打開Windows控制面板中的管理工具。對于windows XP:選擇“性能維護”>>“管理工具”>>“數據源(ODBC)”; 對于windows 2000:選擇“管理工具”>>“數據源”。
打開“數據源”。出現ODBC數據源管理器對話框,顯示現有的數據源名稱。
選擇“用戶DSN”,單擊“添加”按鈕,出現安裝數據源驅動程序對話框。Access(*.mdb)數據源,單擊“完成”按鈕,出現“創建數據源對話框,鍵入需要創建的數據源名,并為創建的數據源選擇一個數據庫表。
單擊數據庫區域的“選擇”按鈕,選擇需要的數據庫表。當需要為數據源授權訪問級別時,單擊“高級”按鈕。設置登錄名和密碼后,單擊“確定”按鈕,完成Access數據庫在ODBC管理器中的配置。
如果還沒有數據庫表,則需創建一個數據庫表。

數據源就是數據庫,在設定了數據源的基礎上,Java程序要訪問數據庫表,還要建立JDBC-ODBC橋接器,讓程序與數據庫連接。以后,程序就可向數據庫發送SQL語句,處理數據庫返回的結果。Java數據庫連接JDBC(Java DataBase Connectivity)由一組用Java語言編寫的類和接口組成,JDBC是Java程序與數據庫連接API。它能做以下三件事情:與某個數據庫建立連接、向數據庫發送SQL語句和處理數據庫返回的結果。

調用類方法Class.forName(String s)能建立JDBC-ODBC橋接器。例如,代碼:

?
1
2
3
try{
  Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
}catch(Exception e){}


為Java程序加載了驅動程序。
【例】說明與數據庫連接的方法connectByJdbcOdbc(),該方法按給定的數據庫URL、用戶名和密碼連接數據庫,如果連接成功,方法返回連接對象,連接不成功,則返回空。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public static connection connectByjdbcOdbc(String url, String username, String password){
  Connection con = null;
  try{
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");  //加載ODBC驅動程序
  }
  catch (Exception e){
    e.printStackTrace();
    return null; //連接失敗
  }
  try{
    con = DriverManager.getConnection(url, username, password);
  }
  catch (SQLExceotuib e){
    e.printStackTrace();
    return null; //連接不成功
  }
  return con; //連接成功
}

以下代碼是對connectByJdbcOdbc()方法的一個調用,數據庫連接成功,彈出數據庫連接成功信息窗,否則彈出數據庫連接不成功信息窗。

?
1
2
3
4
5
6
7
8
9
10
if ((con = connectByJdbcOdbc("jdbc:odbc:redsun", "xia", "1234")) != null){
  JoptionPane.showMessageDialog(null, "數據庫連接成功");
  try{
    con.close();
    con = null;
  }
  catch (SOLException e){}
}
else
  JOptionPane.showMessageDialog(null, "數據庫連接失敗");

用純Java的JDBC驅動程序實現與數據庫連接

Java程序也可以用純Java的JDBC驅動程序實現與數據庫連接。這種方法應用較廣泛,但是需要下載相應的驅動程序包,因為不同的數據庫的連接代碼可能不同,連接不同的數據庫,加載的驅動程序也可能不同。例如,連接SQLServer的驅動程序在www.msdn.com網站下載,有3個包:msbase.jar,mssqlserver.jar和msutil.jar,并要求將這3個包放在jdk\jre\lib\ext\目錄下,或在CLASSPATH中設置其放置位置。

使用純Java的JDBC驅動程序實現與數據庫連接的過程如下:
加載驅動程序。有兩種加載驅動程序的方式:
一各是將驅動程序添加到java.lang.System的屬性jdbc.drivers中。這是一個DriverManager類加載驅動程序類名的列表,表元用冒號分隔。
另一種方式是從相關的網站下載驅動程序后,在程序中利用Class.forName()方法加載指定的驅動程序。例如:

?
1
Class.forName(“com.microsoft.jdbc.sqlserver.SQLServerDriver”);


創建指定數據庫的URL。數據庫的URL對象類似網絡的統一資源定位符,其格式是:

?
1
jdbc:subProtocol:subName://hostname:port:Databasename=XXX


其中,subprotocol是某種驅動程序支持的數據庫連接機制; subName是當前連接機制下的具體名稱;hostName是主機名;port是相應的連接端口;DatabaseName是要連接的數據庫名稱。例如,以下代碼可以是一個數據庫的URL:

?
1
jdbc:Microsoft:sqlserver://localhost:1433;Databasename=ksinfo


該數據庫的URL說明利用miscrosoft提供的機制,用sqlserve驅動,通過1433端口訪問本機上的ksInfo數據庫。
建立連接。驅動程序管理器(DriverManager)的方法getConnection()建立連接。

【例】說明與數據庫連接的靜態方法connectByJdbc(),該方法按給定的數據庫URL、用戶名和密碼連接數據庫,如果連接成功,方法返回true,連接不成功,則返回false。

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public static Connection conectByJdbc(String url, String username, String password){
  Connection con = null;
  try{
    Class.forName( //加載特定的驅動程序
    "com.microsoft.jdbc.sqlserver.SQLServerDriver");
  }
  catch (Exception e){
    e.printStackTrace();
    return null; //連接失敗
  }
  try{
    con = DriverManage.getConnection(url, username, password);
  }
  catch (SQLException e){
    e.printStackTrace();
    return null; //連接失敗
  }
  return con; //連接成功
}

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 喜马拉雅听书免费版 | 色欲麻将 | 亚洲精品视频在线 | 99九九精品视频 | 8x8x拔插 | 国产精品久久久精品日日 | poronovideos极度残酷 | 国产真实偷乱视频在线观看 | 精品综合久久久久久8888 | 亚洲国产99在线精品一区69堂 | 久久久久综合 | 无码专区aaaaaa免费视频 | 91短视频在线播放 | 暖暖日本在线观看免费 | 精品淑女少妇AV久久免费 | 特黄未满14周岁毛片 | 麻豆网站在线观看 | 亚洲精品国产AV成人毛片 | 91精品手机国产在线观 | 2020年精品国产午夜福利在线 | 亚洲国产精品久久丫 | 99视频有精品视频免费观看 | 2019中文字幕 | 黑白配高清hd在线视频 | 免费抽搐一进一出印度 | 亚洲国产欧美在线人成aaaa20 | 91桃色视频在线观看 | 51国产午夜精品免费视频 | 国产无限 | 波多野给衣一区二区三区 | 91亚色视频在线观看 | 国产精品视频视频久久 | 国产精品日本一区二区不卡视频 | 天堂樱桃bt在线www | 51国产午夜精品免费视频 | 国内精品久久久久影院嫩草 | 精品日韩一区二区三区 | h杯奶水太多h | 色狼屋 | 免费毛片在线观看 | 天堂精品高清1区2区3区 |