java - 一对多映射

标签 java hibernate

我在 Person 和 Address 类之间有一对多的关系。根据 Hibernate 文档,多方始终是关系的拥有方,即多方不应定义 mappedBy 元素。

在我的例子中,一个人可以有多个地址,所以人对应一侧,地址对应多侧。如果我没有在两个类中定义 mappedBy 元素,哪个类成为关系的所有者?

Owner表总是有外键映射吗?

最佳答案

是的,拥有实体的表始终是带有外键的表。

令人遗憾的是,JPA 规范的作者选择将该实体称为关系的“所有者”。该名称与经常同时使用的聚合术语相冲突。例如,在您的情况下,该人拥有该地址(如果您删除一个人,您将删除其所有地址;如果您删除一个地址,则不会删除拥有它的人)。但是,地址拥有人与地址之间的关系

实际上,“拥有方”只是指“拥有实际定义用于记录关系的外键的表的一方”。

关于java - 一对多映射,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7792443/

相关文章:

java - Hybris抛出uri : http://java. sun.com/jsp/jSTL/core无法解决

java - 以编程方式切换到 JDBCTemplate 时 Spring 事务不会回滚

java - HTTP 请求之间的 Hibernate session

java - hibernate 模式 : maven dependency version information

java - SpringMVC + Hibernate - 模型属性和更新

java - 如何正确读取这个异常?这是 Hibernate 映射问题吗?

java - 为什么键盘给出的循环迭代范围将自身算作一次迭代?

java - 从扩展 ArrayAdapter 的类中获取 ListView 自定义 friend

java - 使用 Rome Library 获取所有 RSS 提要条目

java - 从具有许多相同元素名称的 XML 模式生成时如何避免巨大的 Java 文件