| 導購 | 订阅 | 在线投稿
分享
 
 
 

JDBC學習筆記(1)

來源:互聯網  2008-06-24 08:57:01  評論

l. 連接到數據庫的方法

答:1) ODBC(Open Database Connectivity)

一個以C語言爲基礎訪問SQL爲基礎數據庫引擎的接口,它提供了一致的接口用于和數據庫溝通以及訪問數據。

2) JDBC

Java版本的ODBC

2. JDBC應用編程接口

答:JDBC應用編程接口是:

1) 標准的數據訪問接口,可以連到不同的數據庫;

2) JAVA編程語言的一組類和接口。

JDBC應用編程接口能夠:

1) 連接到數據庫;

2) 發SQL查詢字符串到數據庫;

3) 處理結果。

JDBC應用編程接口有二個主要的部分:

1) JAVA應用程序開發接口面向JAVA應用程序開發者;

2) JDBC驅動程序開發接口

3. JDBC Driver

答:1) 一大堆實現了JDBC類和接口的類;

2) 提供了一個實現java.sql.Driver接口的類。

4. JDBC Driver的四種類型

答:1) JDBC-ODBC橋

由ODBC驅動提供JDBC訪問

2) 本地API

部分Java driver把JDBC調用轉化成本地的客戶端API

3) JDBC-net

純的Java driver,將JDBC調用轉入DBMS,與網絡協議無關。然後通過服務器將調用轉爲DBMS協議。

4) 本地協議

純的java driver,將JDBC調用直接轉爲DBMS使用的網絡協議

5. JDBC開發者接口

答:1) java.sql--java 2平台下JDBC的主要功能,標准版(J2SE)

2) javax.sql--java 2平台下JDBC增強功能,企業版(J2EE)

6. 使用URL確認數據庫

答:我們使用URL來確定一個數據庫(正確的Driver,正確的主機,正確的協議,正確的協議,正確的用戶名和密碼);

語法:protocol:subprotocol:subname

範例:jdbc:db2:MyTest

jdbc:db2://localhost:6789/MyTest

7. javax.sql包JDBC2.0的增強功能

答:1) 數據源接口;

2) 連接池;

3) 分布式交易;

4) 行集;

8. 創建一個基本的JDBC應用

答:1) 步驟一:注冊一個driver;

2) 步驟二:建立一個到數據庫的連接;

3) 步驟三:創建一個statement;

4) 步驟四:執行SQL語句;

5) 步驟五:處理結果;

6) 步驟六:關閉JDBC對象

9. 注冊一個Driver(步驟一)

答:1) driver被用于連接到數據庫;

2) JDBC應用編程接口使用第一個能成功連接到給定URL的driver;

3) 在同一時間可以裝載多個driver

10.注冊一個driver的方法:

答:1) 使用類loader(裝載;實例化;注冊入DriverManager)

a. Class.forName("Com.ibm.db2.jdbc.app.DB2Driver");

b. Class.forName("Com.ibm.db2.jdbc.net.DB2Driver");

c. Class.forName("Com.microsoft.jdbc.sqlServer.SQLServerDriver);

d. Class.forName("oracl.jdbc.driver.OracleDriver");

e. Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

2) 實例化一個Driver

a. Driver drv = new COM.cloudscape.core.RmiJdbcDriver();

1. 建立一個到數據庫的連接(步驟二)

答:DriverManager調用getConnection(urlString)方法,實際上調用的是driver的connect(urlString)方法;

1) 當一個driver肯定地對應到一個數據庫URL,DriverManager建立一個連接;

2) 當沒有driver匹配,返回null然後下一個driver被檢驗;

3) 假如沒有建立連接,抛出一個SQLExcepiton異常

2. 經常使用的一些JDBC URL

答:1) JDBC-ODBC: jdbc:odbc:<DB>

2) Oracle: jdbc:oracle:oci:@<sid> or jdbc:oracle:thin:@<SID>

3) Weblogic MS-SQL: jdbc:weblogic:mssqlserver4:<DB>@<HOST>:<PORT>

4) DB2: jdbc:db2:MyTest or jdbc.db2://localhost:6789/MyTest(需要用戶名和密碼)

3. Driver連接方法

答:1) 創建一個到指定Driver實例的直接調用;

2) 避免一般訪問的問題

Driver drv = new COM.ibm.db2.jdbc.app.DB2Driver();

Connection con = null;

try {con = drv.connect("jdbc:db2:MyTest",new Properties())}

catch(SQLException e){}

4. 創建一個Statement(步驟三)

答:1) Statement的三個接口:

a. Statement;

b. PreparedStatement(繼承自Statement);

c. CallableStatement(繼承自PreparedStatement);

2) 使用方法Connection.createStatement()得到一個Statement對象

5. PreparedStatement對象

答:1) 調用ProparedStatement比statement更爲高效;

2) 繼承自Statement;

3) 語法:PreparedStatement pstm = connection.prepareStatement(sqlString);

6. CallableStatement對象

答:1) 通過CallableStatement調用數據庫中的存儲過程;

2) 繼承自PreparedStatement;

3) CallableStatement cstm = connection.prepareCall("{call return_student[?,?]}");

cstm.setString(1,"8623034");

cstm.registerOutparameter(2, Types.REAL);

cstm.execute();

float gpa = cstm.getFloat(2);

7. Statement接口的比較

答: | Statement | PreparedStatement | CallableStatement

------------------------------------------------------------------------------

寫代碼位置 | 客戶端 | 客戶端 | 服務器端

------------------------------------------------------------------------------

寫代碼位置 | 客戶端 | 服務器端 | 服務器端

------------------------------------------------------------------------------

編寫代碼技術 |Java,SQL操作 |Java,SQL操作 | 數據庫的程序語言,如PL/SQL

------------------------------------------------------------------------------

可配置性 | 高 |第一次高,以後低 | 低

------------------------------------------------------------------------------

可移植性 | 高 |假設支持PreparedStatement的話高

------------------------------------------------------------------------------

傳輸效率 | 低 |第一次低,以後高 | 高

l. 連接到數據庫的方法 答:1) ODBC(Open Database Connectivity) 一個以C語言爲基礎訪問SQL爲基礎數據庫引擎的接口,它提供了一致的接口用于和數據庫溝通以及訪問數據。 2) JDBC Java版本的ODBC 2. JDBC應用編程接口 答:JDBC應用編程接口是: 1) 標准的數據訪問接口,可以連到不同的數據庫; 2) JAVA編程語言的一組類和接口。 JDBC應用編程接口能夠: 1) 連接到數據庫; 2) 發SQL查詢字符串到數據庫; 3) 處理結果。 JDBC應用編程接口有二個主要的部分: 1) JAVA應用程序開發接口面向JAVA應用程序開發者; 2) JDBC驅動程序開發接口 3. JDBC Driver 答:1) 一大堆實現了JDBC類和接口的類; 2) 提供了一個實現java.sql.Driver接口的類。 4. JDBC Driver的四種類型 答:1) JDBC-ODBC橋 由ODBC驅動提供JDBC訪問 2) 本地API 部分Java driver把JDBC調用轉化成本地的客戶端API 3) JDBC-net 純的Java driver,將JDBC調用轉入DBMS,與網絡協議無關。然後通過服務器將調用轉爲DBMS協議。 4) 本地協議 純的java driver,將JDBC調用直接轉爲DBMS使用的網絡協議 5. JDBC開發者接口 答:1) java.sql--java 2平台下JDBC的主要功能,標准版(J2SE) 2) javax.sql--java 2平台下JDBC增強功能,企業版(J2EE) 6. 使用URL確認數據庫 答:我們使用URL來確定一個數據庫(正確的Driver,正確的主機,正確的協議,正確的協議,正確的用戶名和密碼); 語法:protocol:subprotocol:subname 範例:jdbc:db2:MyTest jdbc:db2://localhost:6789/MyTest 7. javax.sql包JDBC2.0的增強功能 答:1) 數據源接口; 2) 連接池; 3) 分布式交易; 4) 行集; 8. 創建一個基本的JDBC應用 答:1) 步驟一:注冊一個driver; 2) 步驟二:建立一個到數據庫的連接; 3) 步驟三:創建一個statement; 4) 步驟四:執行SQL語句; 5) 步驟五:處理結果; 6) 步驟六:關閉JDBC對象 9. 注冊一個Driver(步驟一) 答:1) driver被用于連接到數據庫; 2) JDBC應用編程接口使用第一個能成功連接到給定URL的driver; 3) 在同一時間可以裝載多個driver 10.注冊一個driver的方法: 答:1) 使用類loader(裝載;實例化;注冊入DriverManager) a. Class.forName("Com.ibm.db2.jdbc.app.DB2Driver"); b. Class.forName("Com.ibm.db2.jdbc.net.DB2Driver"); c. Class.forName("Com.microsoft.jdbc.sqlServer.SQLServerDriver); d. Class.forName("oracl.jdbc.driver.OracleDriver"); e. Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); 2) 實例化一個Driver a. Driver drv = new COM.cloudscape.core.RmiJdbcDriver(); 1. 建立一個到數據庫的連接(步驟二) 答:DriverManager調用getConnection(urlString)方法,實際上調用的是driver的connect(urlString)方法; 1) 當一個driver肯定地對應到一個數據庫URL,DriverManager建立一個連接; 2) 當沒有driver匹配,返回null然後下一個driver被檢驗; 3) 假如沒有建立連接,抛出一個SQLExcepiton異常 2. 經常使用的一些JDBC URL 答:1) JDBC-ODBC: jdbc:odbc:<DB> 2) Oracle: jdbc:oracle:oci:@<sid> or jdbc:oracle:thin:@<SID> 3) Weblogic MS-SQL: jdbc:weblogic:mssqlserver4:<DB>@<HOST>:<PORT> 4) DB2: jdbc:db2:MyTest or jdbc.db2://localhost:6789/MyTest(需要用戶名和密碼) 3. Driver連接方法 答:1) 創建一個到指定Driver實例的直接調用; 2) 避免一般訪問的問題 Driver drv = new COM.ibm.db2.jdbc.app.DB2Driver(); Connection con = null; try {con = drv.connect("jdbc:db2:MyTest",new Properties())} catch(SQLException e){} 4. 創建一個Statement(步驟三) 答:1) Statement的三個接口: a. Statement; b. PreparedStatement(繼承自Statement); c. CallableStatement(繼承自PreparedStatement); 2) 使用方法Connection.createStatement()得到一個Statement對象 5. PreparedStatement對象 答:1) 調用ProparedStatement比statement更爲高效; 2) 繼承自Statement; 3) 語法:PreparedStatement pstm = connection.prepareStatement(sqlString); 6. CallableStatement對象 答:1) 通過CallableStatement調用數據庫中的存儲過程; 2) 繼承自PreparedStatement; 3) CallableStatement cstm = connection.prepareCall("{call return_student[?,?]}"); cstm.setString(1,"8623034"); cstm.registerOutparameter(2, Types.REAL); cstm.execute(); float gpa = cstm.getFloat(2); 7. Statement接口的比較 答: | Statement | PreparedStatement | CallableStatement ------------------------------------------------------------------------------ 寫代碼位置 | 客戶端 | 客戶端 | 服務器端 ------------------------------------------------------------------------------ 寫代碼位置 | 客戶端 | 服務器端 | 服務器端 ------------------------------------------------------------------------------ 編寫代碼技術 |Java,SQL操作 |Java,SQL操作 | 數據庫的程序語言,如PL/SQL ------------------------------------------------------------------------------ 可配置性 | 高 |第一次高,以後低 | 低 ------------------------------------------------------------------------------ 可移植性 | 高 |假設支持PreparedStatement的話高 ------------------------------------------------------------------------------ 傳輸效率 | 低 |第一次低,以後高 | 高
󰈣󰈤
王朝萬家燈火計劃
期待原創作者加盟
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有