使用Hibernate Annotation經(jīng)驗總結
在向大家詳細介紹使用Hibernate Annotation之前,首先讓大家了解下Hibernate的配置依賴于外部 XML 文件,然后全面介紹使用Hibernate Annotation。
在過去幾年里,Hibernate不斷發(fā)展,幾乎成為Java數(shù)據(jù)庫持久性的事實標準。它非常強大、靈活,而且具備了優(yōu)異的性能。在本文中,我們將了解如何使用Java 5 注釋來簡化Hibernate代碼,并使持久層的編碼過程變得更為輕松。
傳統(tǒng)上,Hibernate的配置依賴于外部 XML 文件:數(shù)據(jù)庫映射被定義為一組 XML 映射文件,并且在啟動時進行加載。創(chuàng)建這些映射有很多方法,可以從已有數(shù)據(jù)庫模式或Java類模型中自動創(chuàng)建,也可以手工創(chuàng)建。無論如何,您最終將獲得大量的 Hibernate 映射文件。此外,還可以使用工具,通過javadoc樣式的注釋生成映射文件,盡管這樣會給您的構建過程增加一個步驟。
在最近發(fā)布的幾個Hibernate版本中,出現(xiàn)了一種基于 Java 5 注釋的更為巧妙的新方法。借助新的 Hibernate Annotation 庫,即可一次性地分配所有舊映射文件——一切都會按照您的想法來定義——注釋直接嵌入到您的 Java 類中,并提供一種強大及靈活的方法來聲明持久性映射。籍由自動代碼完成和語法突出顯示功能,最近發(fā)布的Java IDE也為其提供了有力的支持。
Hibernate Annotation還支持新的 EJB 3 持久性規(guī)范。這些規(guī)范旨在提供一種標準化的 Java 持久性機制。由于 Hibernate 3 還提供了一些擴展,因此您可以十分輕松地遵從這些標準,并使用 EJB 3 編程模型來對 Hibernate 持久層進行編碼。現(xiàn)在,讓我們來動手使用Hibernate Annotation。
要使用Hibernate Annotation,您至少需要具備 Hibernate 3.2和Java 5??梢詮?Hibernate 站點 下載 Hibernate 3.2 和 Hibernate Annotation庫。除了標準的 Hibernate JAR 和依賴項之外,您還需要 Hibernate Annotations .jar 文件(hibernate-annotations.jar)、Java 持久性 API (lib/ejb3-persistence.jar)。如果您正在使用 Maven,只需要向 POM 文件添加相應的依賴項即可,如下所示:
- ...
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate</artifactId>
- <version>3.2.1.ga</version>
- </dependency>
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-annotations</artifactId>
- <version>3.2.0.ga</version>
- </dependency>
- <dependency>
- <groupId>javax.persistence</groupId>
- <artifactId>persistence-api</artifactId>
- <version>1.0</version>
- </dependency>
- ...
【編輯推薦】