麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

一個簡單的JDBC包裝器(2)

2019-11-18 13:40:33
字體:
來源:轉載
供稿:網友

  一個簡單的JDBC包裝器(2)

一個完整的示例
現在我們已經看過了所有的類,讓我們來看一個完整的示例吧。在清單 4 中,我們將抽取出符合特定條件的一套記錄,然后打印出它們的值。


清單 4. 一個讀取數據的完整示例
// First, get all rows meeting the criterion
RowSet rs = table.getRows( "id<103" );
// Iterate through the set
for (int i=0; i<rs.length(); ++i) {
// Grab each row in turn
Row row = rs.get( i );
// Get and PRint the value of the "name" field
String name = row.get( "name" );
System.out.println( "Name: "+name );
}

如此輕易!在下一節中,我們將看看怎樣向數據庫寫入數據。

修改數據
正如前面所提到的,使用我們的 API 讀寫數據是以整個行為單位的。為了向數據庫寫入數據,您必須創建(或修改)Row 對象,然后向數據庫寫入那個 Row 對象。

向數據庫寫入數據是通過使用 Table 中的 putRow 方法。這種方法有兩種變體:

public void putRow( Row row )
public void putRow( Row row, String conditions )

這兩種變體分別對應于 SQL 中的 INSERT 和 UPDATE 命令。

在第一個變體中,寫一行意味著將一個全新的行插入表中。

在第二個變體中,寫一行意味著修改一個現有的行。conditions 參數使您能夠指定您想要修改的是哪一行(哪些行)。

讓我們來看看每種方法的一個示例。

插入一個新行
插入一個新行很簡單,因為您不必指定要修改的行(一行或多行)。您只是簡單地把行插入:

table.putRow( row );

您可以重新創建一個 Row,如清單 5 所示。

清單 5. 重新創建一個 Row
// Create an empty row object
Row row = new Row();
// Fill it up with data
row.put( "id", "200" );
row.put( "name", "Joey Capellino" );

或者,您可以修改一個以前曾經從數據庫中讀取的一個現有的行,如清單 6 所示。

清單 6. 修改現有的 Row
// Grab a row from the database
Row row = table.getRow( someConditions );
// Change some or all of the fields
row.put( "name", "Joey Capellino" );

雖然通常是在插入時重新創建 Row,更新時使用現有的 Row,實際上您可以用任何方式來進行。

更新現有的行
正如前面的部分提到的,對于您如何創建用來更新的 Row 是沒有限制的。 但是,通常您是使用一個剛從數據庫中讀出的 Row。

為了具體描述這一點,我們將使用一個示例(在該例子中我們讀出一個員工的姓名),改變這個名字,然后將更改后的結果寫回數據庫,如清單 7 所示。

清單 7. 通過修改 Row 進行更新
Row row = table.getRow( "id=104" );
row.put( "name", newName );
table.putRow( row, "id=104" );

注重我們必須在調用 putRow() 中指定條件。這樣才會使調用成為更新,而不是插入。

注重,這個調用將更新所有符合條件的行,而不是其中的一行。

結論
在本文中,我們初步熟悉了一種通過 JDBC 包提供一種簡化的通往關系型數據庫接口的 API。這種抽象保留了 JDBC 接口的很多基本關系型功能,但對其進行了簡化,從而讓使用非常地方便。這種簡化是以效率為代價的,但當目標是簡單性時,這并不是一個令人驚異的結果。

參考資料

參加本文的討論論壇。

下載本文中討論的類的全部資料:
Database.java
Table.java
RowSet.java
Row.java

JDBC 學習中心包含許多教程的鏈接。

閱讀 JDBC 文檔頁可以獲得很多有用的文檔的鏈接。

您可以在 Amazon 購買 《JDBC API 教程和參考大全》,第 2 版,或者只是閱讀它。

免費數據庫清單包含許多免費 RDBMS 軟件包的鏈接,您可以在啟用 JDBC 的程序的服務器端使用。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久久久久久久浪潮精品 | 一级黄色免费观看视频 | 亚洲草逼视频 | 草妞视频| 日本在线免费观看 | 国产亚洲精品美女久久久 | 久久撸视频 | 国产成人高清成人av片在线看 | 亚洲成人国产 | 国产亚洲精品美女久久久 | 国产精品久久久久影院老司 | 草久免费 | 中国大陆高清aⅴ毛片 | 国产精品一区二区三区在线 | 色综合视频 | 色婷婷av一区二区三区久久 | 午夜精品成人一区二区 | 久草在线最新 | 国人精品视频在线观看 | 中国洗澡偷拍在线播放 | 久久精品日产高清版的功能介绍 | 精品人伦一区二区三区蜜桃网站 | 国产精品久久久乱弄 | 羞羞视频免费视频欧美 | 桥本有菜免费av一区二区三区 | 麻豆视频在线观看免费网站 | 精品国产91一区二区三区 | 日韩视频在线观看免费视频 | 狼人狠狠干 | 久久久久久久久久美女 | 中国女警察一级毛片视频 | 欧美日韩在线中文 | 中国性xxx| 成年免费视频黄网站在线观看 | 一级大黄毛片免费观看 | 色婷婷久久久亚洲一区二区三区 | 空姐毛片| 制服丝袜日日夜夜 | 免看一级片 | 成人午夜在线免费观看 | 精品三区视频 |