我在我的項目中使用基於spring 3和hibernate4.2的註釋配置,我有兩個共同字段createdDate & updatedDate的數據庫表(視圖對象/實體)的數量。 我想分離這兩個領域。我想把這兩個字段放在一些類中,它們充當所有實體的超類,並通過每個子類的繼承映射來實現這一點。我不需要這個超類和子類實體之間的任何外鍵關係..任何人都可以請示例更好的解決方案..謝謝。如何在Hibernate註解映射中分離comman字段
1
A
回答
0
您需要使用@MappedSuperclass
註釋超類。
Hibernate文檔中的第一章:5.1.6.4. Inherit properties from superclasses
這(繼承父屬性)是通過技術 或業務超類共享公共屬性有時是有用的,而不包括其作爲定期映射 實體(即沒有這個實體的具體表)。爲此目的,您可以將它們映射爲@MappedSuperclass,即 。
@MappedSuperclass
public class BaseEntity {
@Temporal(TemporalType.TIMESTAMP)
public Date createdDate;
@Temporal(TemporalType.TIMESTAMP)
public Date updatedDate;
}
@Entity
class NormalEntity extends BaseEntity {
@Id
public Integer id
...
}
0
不要使用@MappedSuperclass
,只有在類型實際上是超類,它顯然不是從閱讀你的問題的一個亞型使用。
調查@Embedded
和@Embeddable
,這是你真正想要的。
教程:http://www.concretepage.com/hibernate/example-embeddable-embedded-hibernate-annotation.php
+0
你怎麼讀這個「......我想把這兩個領域保留在某個類中,作爲所有實體的超類...」? – Ralph
相關問題
- 1. hibernate註解錯誤映射
- 2. 在Hibernate中映射註釋?
- 3. Hibernate工具:映射和註解失敗
- 4. Hibernate註解映射比hbm.xml映射需要更多的時間
- 5. 映射在Hibernate中
- 6. 無法使用Hibernate Mapping映射字段
- 7. Hibernate Annotations - 如何從映射中排除Bean的字段?
- 8. 在Spring Boot中使用Hibernate映射PostGIS幾何點字段
- 9. 如何使用註釋在hibernate中實現映射?
- 10. 如何映射分離的集合(list,集)或通過註釋
- 11. 如何用Hibernate映射LinkedHashMap?
- 12. 如何讀取Hibernate映射
- 13. Hibernate如何映射這個?
- 14. 使用註解映射Hibernate中的座標HashMap
- 15. 如何將分離的字符串映射到類中?
- 16. Hibernate映射 - 映射到表
- 17. 如何解決hibernate錯誤:在實體映射中重複列?
- 18. Hibernate映射 - 包含映射的映射
- 19. 枚舉映射在Hibernate中
- 20. 映射NCLOB在Hibernate中
- 21. 映射錯誤在Hibernate中
- 22. 映射註解不顯示在ios10中
- 23. 如何使用註釋映射Hibernate中的地圖列表?
- 24. 映射的Hibernate映射,其中鍵是復值的一部分
- 25. 父/子關係的Hibernate註釋映射?
- 26. 使用Hibernate註釋映射自然鍵
- 27. Hibernate參數注入映射,可能嗎?
- 28. 使用hibernate註釋映射ManyToMany關係?
- 29. Hibernate枚舉映射使用註釋
- 30. 帶註釋的Hibernate表映射
爲什麼你需要一個更好的解決方案,這有什麼錯你的嗎? – 2013-08-07 05:19:57
嘗試'@Embeddable和@嵌入式' –