hibernate實體類與資料表對映的兩種方式
阿新 • • 發佈:2019-02-12
1、傳統方法是通過XX.hbm.xml對映檔案
注意:1)JPA jar包在hibernate3.6之後被放入hibernate-core包中。
2、java5.0以後可以通過註解方式取代XX.hbm.xml對映檔案
注意1)需要在Hibernate配置檔案中註冊該實體類: <mapping class="com.X.X.X" />
2)實體類的屬性宣告順序和資料庫表中的欄位順序不對應
3)實體類屬性註解的時候,建議註解在get方法前
4)如果在實體類中某些屬性不註解:(屬性和get都不寫註解),預設為表字段名與實體類屬性名一致。
5)如果實體類的某個成員屬性不需要存入資料庫中,使用@Transient 進行註解就可以了。即類似於:(xxx.hbm.Xml配置中的某些欄位不寫(就是不需要對這個成員屬性進行對映)
6)所有這些註解在:javax.persistence包下。而不是在hibernate包中。
注意:1)JPA jar包在hibernate3.6之後被放入hibernate-core包中。
2)<mapping resource="com/X/X/X.hbm.xml"/>
3)Hibernate提供了hbm.xml到資料庫表的語句的工具hbm2ddl,它是一個api,可以針對此Api程式設計來實現從hbm.xml生成建表語句。
2、java5.0以後可以通過註解方式取代XX.hbm.xml對映檔案
注意1)需要在Hibernate配置檔案中註冊該實體類: <mapping class="com.X.X.X" />
2)實體類的屬性宣告順序和資料庫表中的欄位順序不對應
3)實體類屬性註解的時候,建議註解在get方法前
4)如果在實體類中某些屬性不註解:(屬性和get都不寫註解),預設為表字段名與實體類屬性名一致。
5)如果實體類的某個成員屬性不需要存入資料庫中,使用@Transient 進行註解就可以了。即類似於:(xxx.hbm.Xml配置中的某些欄位不寫(就是不需要對這個成員屬性進行對映)
6)所有這些註解在:javax.persistence包下。而不是在hibernate包中。