Hibernate
此條目需要補充更多來源。 (2023年8月9日) |
Hibernate是一種Java語言下的對象關係映射(ORM)解決方案。它是使用GNU寬通用公共許可證發行的自由、開源的軟件。它為面向對象的領域模型到傳統的關係型數據庫的映射,提供了一個使用方便的持久化框架。
開發者 | 紅帽公司 |
---|---|
當前版本 | v5.3.1(2018年5月28日 | )
源代碼庫 | |
編程語言 | Java |
操作系統 | 跨平台(Java虛擬機) |
平台 | Java虛擬機 |
許可協議 | GNU寬通用公共許可證 |
網站 | http://www.hibernate.org |
概覽
它的設計目標是將軟件開發人員從大量相同的數據持久層相關編程工作中解放出來。無論是從設計草案還是從一個遺留數據庫開始,開發人員都可以採用Hibernate。
Hibernate不僅負責從Java類到數據庫表的映射(還包括從Java數據類型到SQL數據類型的映射),還提供了面向對象的數據查詢檢索機制,從而極大地縮短了手動處理SQL和JDBC上的開發時間。
發展歷程
2001年,澳大利亞墨爾本一位名為Gavin King的27歲的程序員,買了一本SQL編程的書,他厭倦了實體bean,認為自己可以開發出一個符合對象關係映射理論,並且真正好用的Java持久化層框架,因此他需要先學習一下SQL。這一年的11月,Hibernate的第一個版本發布了。
2002年,已經有人開始關注和使用Hibernate了。
2003年9月,Hibernate開發團隊進入JBoss公司,開始全職開發Hibernate,從這個時候開始Hibernate得到了突飛猛進的普及和發展。
2004年,整個Java社區開始從實體bean向Hibernate轉移,特別是在Rod Johnson的著作《Expert One-on-One J2EE Development without EJB》出版後,由於這本書以紮實的理論、充分的論據和詳實的論述否定了EJB,提出了輕量級敏捷開發理念之後,以Hibernate和Spring為代表的輕量級開源框架開始成為Java世界的主流和事實標準。在2004年Sun領導的J2EE5.0標準制定當中的持久化框架標準正式以Hibernate為藍本。
2006年,J2EE5.0標準正式發布以後,持久化框架標準Java Persistent API(簡稱JPA)基本上是參考Hibernate實現的,而Hibernate在3.2版本開始,已經完全兼容JPA標準。
程式開發
開發環境
Hibernate是一個以LGPL(Lesser GNU Public License)許可證形式發布的開源項目。在Hibernate官網上有下載Hibernate包的說明。Hibernate包以源代碼或者二進制的形式提供。
開發工具
Eclipse:一個開放源代碼的、基於Java的可擴展開發平台。
NetBeans:開放源碼的Java集成開發環境,適用於各種客戶機和Web應用。
IntelliJ IDEA:在代碼自動提示、代碼分析等方面,具有很好的功能。
MyEclipse:由Genuitec公司開發的一款商業化軟件,是應用比較廣泛的Java應用程序集成開發環境。
.NET上的Hibernate
Hibernate有個在.NET Framework上的實作版本,稱為NHibernate,在ADO.NET Entity Framework發表之前,NHibernate是在.NET Framework上經常被使用的ORM實作。