簡述Hibernate歷史背景
Hibernate是一個免費的開源Java包,它使得與關系數據庫打交道變得十分輕松,就像您的數據庫中包含每天使用的普通Java對象一樣,同時不必考慮如何把它們從神秘的數據庫表中取出(或放回到數據庫表中)。它解放了您,使您可以專注于應用程序的對象和功能,而不必擔心如何保存它們或稍后如何找到它們。
Hibernate歷史背景
大多數應用程序都需要處理數據。Java應用程序運行時,往往把數據封裝為相互連接的對象網絡,但是當程序結束時,這些對象就會消失在一團邏輯中,所以需要有一些保存它們的方法。有時候,甚至在編寫應用程序之前,數據就已經存在了,所以需要有讀入它們和將其表示為對象的方法。手動編寫代碼來執行這些任務不僅單調乏味、易于出錯,而且會占用整個應用程序的很大一部分開發工作量。
優秀的面向對象開發人員厭倦了這種重復性的勞動,他們開始采用通常的“積極”偷懶做法,即,創建工具,使整個過程自動化。對于關系數據庫來說,這種努力的***成果就是對象/關系映射(ORM)工具。
這類工具有很多,從昂貴的商業產品到內置于J2EE中的EJB標準。然而,在很多情況下,這些工具具有自身的復雜性,使得開發人員必須學習使用它們的詳細規則,并修改組成應用程序的類以滿足映射系統的需要。由于這些工具為應付更加嚴格和復雜的企業需求而不斷發展,于是在比較簡單和常見的場景中,使用它們所面臨的復雜性反而蓋過了所能獲得的好處。這引起了一場革命,促進了輕量級解決方案的出現,而Hibernate就是這樣的一個例子。
Hibernate項目有大量的在線文檔,可以幫助您找準方向,快速開始使用。
權威性的參考資料是Hibernate in Action,作者是Christian Bauer和Gavin King,都是Hibernate的創建者。該書全面而基礎地講述了Hibernate包的功能和正確的使用方法。
閱讀我的書Hibernate: A Developer's Notebook,也是一種快速上手的好方法。它直接但詳細地講述了如何在Java項目中設置Hibernate,以及如何使用它的一些最重要的功能。其中的代碼示例普遍基于Hibernate和HSQLDB的早期版本,所以如果您想不加改動地使用它們,需要使用這兩種軟件的正確版本。無論如何,基本的概念是正確的,而且我希望能夠盡快地針對Hibernate 3更新本書。
另一本有趣的書是Better Faster Lighter Java,作者是Bruce Tate 和Justin Gehtland。書中給出了一些實用方法,可以以合理的方式完成實際的項目,這也是它流行的原因之一。它在如何評估和使用(或否決)可用的Java技術方面給出了合理建議,并作為正確方法的例子提到了Hibernate和Spring。
***,“Working with Hibernate in Eclipse”(它預先提到了更強大的新的alpha版的Hibernate 3工具)中詳細講述了如何將一個叫做Hibernate Synchronizer的Eclipse插件與Hibernate一起使用。 以上介紹Hibernate歷史背景。
【編輯推薦】