总的来说,我对 Hibernate 和 ORM 还很陌生。
我有一个产品实体,其中包含描述、价格、条形码和其他产品泛型等属性。
现在我想管理其他产品特定数据,例如我可以想象一个太阳镜实体,其中包含有关镜片、尺寸的信息......以及一个 watch 实体,其中包含与形状、电池持续时间等相关的其他详细信息。
哪个策略更好?在“非 ORM”世界中我会:
两个表: watch 和太阳镜,具有重复的字段
一张表:“产品”,包含 watch 和眼镜的所有属性以及“kindOfProduct”字段
如何在 Hibernate/JPA 上对其进行建模?
最佳答案
您主要有三种继承策略可供选择。您在问题中提到的两个,加上一个混合的,它将公共(public)属性存储到基表中,将特定属性存储到专用表中。
但是仅凭这些信息,很难给出建议,因为每种策略可以实现的目标都有规则和限制。我建议首先阅读有关此主题的 Hibernate 文档并亲自进行实验:
http://docs.jboss.org/hibernate/stable/orm/manual/en-US/html_single/#d0e7071
关于java - 建模 "specific products"数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13912448/