我在 Person 和 Address 类之间有一对多的关系。根据 Hibernate 文档,多方始终是关系的拥有方,即多方不应定义 mappedBy 元素。
在我的例子中,一个人可以有多个地址,所以人对应一侧,地址对应多侧。如果我没有在两个类中定义 mappedBy 元素,哪个类成为关系的所有者?
Owner表总是有外键映射吗?
最佳答案
是的,拥有实体的表始终是带有外键的表。
令人遗憾的是,JPA 规范的作者选择将该实体称为关系的“所有者”。该名称与经常同时使用的聚合术语相冲突。例如,在您的情况下,该人拥有该地址(如果您删除一个人,您将删除其所有地址;如果您删除一个地址,则不会删除拥有它的人)。但是,地址拥有人与地址之间的关系。
实际上,“拥有方”只是指“拥有实际定义用于记录关系的外键的表的一方”。
关于java - 一对多映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7792443/