早期 Hibernate 依賴外部 XML 映射文件(.hbm.xml)定義資料庫映射,啟動時載入。雖可透過工具自動生成,但專案增長會產生大量映射文件,維護成本高。Hibernate 3.2 引入基於 Java 5 註解的新機制,將映射元數據直接內嵌於實體類中,簡化配置,並獲得 IDE 自動完成與語法高亮支援。
hibernate-annotations.jar)ejb3-persistence.jar 或 persistence-api.jar)<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>
隨著 JPA 2.0/2.1 普及,現代專案多直接使用 javax.persistence 標準註解(@Entity, @Table, @Column 等),Hibernate 專有註解(@org.hibernate.annotations.*)僅在需進階功能時使用。