“資料訪層介紹”隨便寫寫,歡迎指點

sprsong發表於2005-02-24
資料訪問層保證業務邏輯和具體的資料庫相分割,業務的實現和資料庫無關,並支援複用池技術,提高系統的訪問效率,同時良好的資料庫訪問層還可以提供非常先進的O/R mapping(物件和關係的對映)功能,把基於物件導向程式設計的java 物件資料對映成面向關係型的資料庫中去。有了這層對映,開發人員就可以全心全意的把精力用在業務邏輯實現上面,而不用關心資料的儲存。
資料訪問層也有很多實現,例如企業級大部頭人氣作品EJB、簡潔高效的DAO。O/R mapping功能是hibernate最早推廣的,一經面世就獲得極大的好評。O/R mapping的概念得到廣泛認可之後,幾大業內巨頭聯合推出了JDO標準,JDO標準將統一O/R mapping規範,併為下一代資料訪問層提供一個準繩。不過JDO只是個標準,需要有具體的實現程式碼才可以應用,castor JDO是一個功能強大的實現,它可以把java物件對映到關聯式資料庫中去,還可以把java物件後資料庫資料直接編碼到XML,XML結合XSL就是下一代客戶介面,是將取代HTML的新貴。有了XSL,XML就可以以網頁的形式直接給客戶察看。但不幸的是有些程式設計師開始指責castor已經開始背離JDO標準並開發了一些非JDO標準的功能,但castor強大的功能無疑已經被廣大程式設計師所接受,簡單的把資料庫物件編碼到XML給客戶察看或者對映到java物件進行邏輯處理,或者把java 物件在編碼到XML給客戶察看,當資料在三層結構的系統中轉化和傳輸時,castor幾乎無所不能,這將節省的極大開發時間。
雖然hibernate、castor和JDO如此強大和紅火,但他們仍然是輕量級構架,要分散式應用,要適應大型企業的海量資料處理,仍然需要EJB的大部頭構架。針對O/R mapping的發展,sun也推出了EJB3.0,結合EJB的長處,提供O/R mapping的功能,但.EJB3.0也只是一個標準,離真正實用還有不少的距離。到底資料庫訪問層的三國紛爭誰是勝者我們不得而知,我們可以做的是在資料庫訪問層外再開發一個代理層,以便讓我們的程式可以方便的在這幾種資料庫訪問層間轉換。

相關文章