http://www.35java.com/zhibo/forum.php?mod=viewthread&tid=260&extra=page%3D2
JDBC技術是Java語言中資料庫編程的標準,近年來隨著B/S應用的廣泛興起,Java技術在目前的伺服器端越來越受重用。作為資訊系統中關鍵的一部分,資料庫編程是編程人員必須掌握的一部分。JDBC技術本身提供了一些可用的編程介面來完成一些基礎事務的處理,但我們也發現,如果只是單純地使用JDBC規範中提供的編程介面來完成事務邏輯的話,代碼的冗餘度十分高,編程效率也很低。基於此,如果在底層介面的基礎之上,運用適當的設計模式進行抽象封裝,並加以一些特定的設計以後,就會在JDBC規範介面之上形成一個可擴充的架構。在這個抽象層次上進行開發,不論是重用性、可靠性,還是開發效率,都會大大提高。 1.設計模式要點
所謂模式,就是對特定情形下特定問題的解決方案。這些方案,往往是經驗的總結,是公認優秀的。設計模式就是在物件導向軟體設計時對特定情境下特定問題的公認優秀的設計方案。物件導向思想出現這麼多年,現在已經有了好多特定的模式值得我們在設計軟體時遇到大多數問題時參考借鑒。
2.JDBC編程的要點
利用JDBC標準提供的介面,如果要進行資料庫的訪問,一般的編程過程如下:
(1)擷取資料庫的串連。
(2)對取得的串連的進行特定SQL語句的操作。
如果每次對資料庫訪問都單單進行以上的操作過程,而不進行一定的組織設計,那麼代碼的冗餘度將會十分高,程式員的工作量也十分大,並且編寫出來的代碼也很不靈活,因此有必要引入一定的設計模式來提高代碼的可複用度與可擴充性。
3.利用Factory Method模式控制資料庫連接的產生
在實際的已經確定的系統中,資料庫往往是很少變化的,所以擷取資料庫的第一步在幾乎所有的訪問中都是相同的,為了提高複用度,有必要把它提取成一個單獨的模組。在這裡,只可以使用Factory Method來封裝產生資料庫連接操作。考慮到串連的頻繁性,沒有必要每次要求訪問資料庫都對資料庫申請產生串連,我們可以使用串連池技術來管理一定數量的資料庫連接,這裡我們定義一個ConnectionPool類,其產生資料庫連接的操作定義為newConnection()。
以下是Factory Method基本的代碼片斷:
public
class ConnectionPool……
private Connection newConnection() {
……
Connection con = DriverManager.getConnection(URL, user, password);
……
return con;
}