理解 ORM 映射中的“拥有方”
在对象关系映射(ORM)中,“拥有方”的概念是指管理数据库中外键关系的实体。出现这种情况是因为关系数据库本质上不支持双向关系,这与面向对象编程不同。
拥有方的必要性
在 ORM 中,拥有方负责通过拥有代表关系中其他实体的外键来维护关系的完整性。如果没有所有权方,关系的每一方都需要外键,从而导致不必要的关联表和潜在的数据重复。
不同关系类型中的所有权
示例:与拥有方的一对多映射
考虑以下 Java 示例:
@Entity public class Person { @Id private Long id; @OneToMany(mappedBy = "person") private List<IdDocument> idDocuments; } @Entity public class IdDocument { @Id private Long id; @ManyToOne private Person person; }
在此示例中,Person 是拥有方,因为它包含引用 IdDocument 表的外键。 IdDocument中的mappedBy属性表示该关系由拥有方管理。
使用mappedBy的含义
在非拥有方使用mappedBy转移了管理与拥有方的关系。这意味着:
以上是对象关系映射 (ORM) 中的'拥有方”是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!