java - 建模 "specific products"数据库

标签 java hibernate jpa orm rdbms

总的来说,我对 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/

相关文章:

java - StringBuffer 追加 ("")

hibernate - 如何使 hibernate 3.5.6-Final 和内存中的 hsqldb 2.0.0 一起工作?

java - 如何在 Hibernate/JPA 中使用@Formula

java - 删除父项将子值设置为 NULL 而不删除它们

java - JPA:有没有办法返回下一个可用的PK

java - JPA 无法序列化

java - 从 JVM 上的栈帧获取局部变量

java - 使用 ant 脚本为我的所有项目自动增加 ivy 修订版

java - SimpleDateFormat 行为不一致

java - 玩!框架——ORM