java - 具有关系或单字段 PK 的多个复合 id

标签 java hibernate orm persistence

我一直在处理复合 id 并问了几个问题,建议我用单个 id 列替换我的复合 PK,并控制索引的完整性......所有这些都与映射复合这一事实有关id 没那么简单...

另一方面,有些人鼓励使用符合域模型的复合 ID...

所以我决定问:在使用 Hibernate 的同时,您什么时候会鼓励在数据库中使用复合 PK?

最佳答案

我个人更喜欢复合 ID,因为它们是从实体关系中产生的。然而,Hibernate 建议使用简单的整数 id。但我认为您不必选择其中之一。

您可以将复合 id 组成字段变成 并且在类中有一个私有(private)整型字段供hibernate用作id。

参见http://docs.jboss.org/hibernate/stable/core/reference/en/html/mapping.html#mapping-declaration-naturalid

关于java - 具有关系或单字段 PK 的多个复合 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3713944/

相关文章:

java - 当我从 html 表单传递值时,为什么我在 post api 期间收到 'Column cannot be null' 错误

java - 具有可变数量 OR LIKE 子句的 Hibernate 标准

php - 在扩展另一个实体的实体中使用鉴别器

php - 如何使用 Doctrine 仅保留实体层次结构的第一级?

java - 将 Butterknife 与 BaseActivity/Child Activity 和 MaterialDrawer 结合使用

通过互联网的 Java RMI 连接

java - 将 HQL 结果汇总到列表中

symfony - 从实体生成表架构

java - 如何将当前连接从 Spring 上下文传递到 iReport?

java - 如何在Java中以混合编码将字节数组编码为字符串?