幾個重要介面

2021-05-03 21:17:53 字數 1951 閱讀 1789

(1) statement —— sql語句執行介面

statement介面代表了乙個資料庫的狀態,在向資料庫傳送相應的sql語句時,都需要建立statement

介面或者preparedstatement介面。在具體應用中,statement主要用於操作不帶引數(可以直接執行)的

sql語句,比如刪除語句、新增或更新。

(2) preparedstatement:預編譯的statement

第一步:通過連線獲得preparedstatement物件,用帶佔位符(?)的sql語句構造。

preparedstatement pstm = con.preparedstatement(「select * from test where id=?」);

第二步:設定引數

pstm.setstring(1,「ganbin」); //從一開始

第三步:執行sql語句

rs = pstm.excutequery();

statement傳送完整的sql語句到資料庫不是直接執行而是由資料庫先編譯,再執行。而

preparedstatement是先傳送帶引數的sql語句,再傳送一組引數值。如果是同構的sql語句,

preparedstatement的效率要比statement高。而對於異構的sql則兩者效率差不多。

同構:兩個sql語句可編譯部分是相同的,只有引數值不同。

異構:整個sql語句的格式是不同的

注意點:

1、使用預編譯的statement編譯多條sql語句一次執行

2、可以跨資料庫使用,編寫通用程式

3、能用預編譯時盡量用預編譯

(3) resultset —— 結果集操作介面

resultset介面是查詢結果集介面,它對返回的結果集進行處理。resultset是程式設計師進行jdbc操作的

必需介面。

(4) resultsetmetadata —— 元資料操作介面

resultsetmetadata是對元資料進行操作的介面,可以實現很多高階功能。hibernate執行資料庫的操

作,大部分都是通過此介面。可以認為,此介面是sql查詢語言的一種反射機制。resultsetmetadata介面

可以通過陣列的形式,遍歷資料庫的各個欄位的屬性,對於我們開發者來說,此機制的意義重大。

jdbc通過元資料(metadata)來獲得具體的表的相關資訊,例如,可以查詢資料庫中有哪些表,表有哪些字

段,以及欄位的屬性等。metadata中通過一系列get***將這些資訊返回給我們。

metadata包括:

1.資料庫元資料 database metadata 使用connection.getmetadata()獲得包含了關於資料庫整體元資料資訊。

2.結果集元資料 result set metadata 使用resultset.getmetadata()獲得比較重要的是獲得表的列名、列數等資訊。

結果集元資料物件:resultsetmetadata meta = rs.getmetadata();

--欄位個數:meta.getcolomncount();

--欄位名字:meta.getcolumnname();

--欄位jdbc型別:meta.getcolumntype();

--欄位資料庫型別:meta.getcolumntypename();

資料庫元資料物件:databasemetadata dbmd = con.getmetadata();

--資料庫名=dbmd.getdatabaseproductname();

--資料庫版本號=dbmd.getdatabaseproductversion();

--資料庫驅動名=dbmd.getdrivername();

--資料庫驅動版本號=dbmd.getdriverversion();

--資料庫url=dbmd.geturl();

--該連線的登陸名=dbmd.getusername();

JDBC總結03 幾個重要介面

三 幾個重要介面 1 statement sql 語句執行介面 statement 介面代表了乙個資料庫的狀態,在向資料庫傳送相應的 sql 語句時,都需要 建立 statement 介面或者 preparedstatement 介面。在具體應用中,statement 主要用於操作不 帶引數 可以直...

hibernate的幾個重要的類和介面

該類的物件會自動載入hibernate.cfg.xml檔案,同時也可以定義自己的配置檔案 由於sessionfactory是重量級的,也就是說建立sessionfactory需要消耗大量的資源,所以在整個應用程式中最好只存在乙個sessionfactory,這就需要把獲取sessionfactory...

Apache VFS 6 幾個重要的概念性介面

apache vfs 1 基本介紹 apache vfs 2 檔案的監聽和監控 apache vfs 3 檔案過濾器和選擇器 apache vfs 4 事件 apache vfs 5 使用它!apache vfs 6 幾個重要的概念性介面 apache vfs 7 檔案管理器解析檔案的方法 理解ap...