【问题标题】:placement of mappedBy in a OneToOne relationship in Java Hibernate/JPA在 Java Hibernate/JPA 中的 OneToOne 关系中放置 mappedBy
【发布时间】:2021-12-31 23:15:30
【问题描述】:

如果我们有两个类 X 和 Y,它们之间有 OneToOne 关系

class A {
  @OneToOne(mappedBy = a)
  private B b;
}
class B {
  @OneToOne
  private A a;
}

我想知道,如果我们将 mappedBy 从 A 类传递到 B 类,会不会有什么不同..

【问题讨论】:

标签: java hibernate spring-data-jpa spring-data


【解决方案1】:

当您拥有两个实体(A 和 B)时,您可以选择一个具有外键的实体。

在您的示例中,foreign key 将位于 B 中,引用 A。

但是在 A 中,你想引用 B。所以,你对 JPA 说:我有这个 class A 与 B 有关系,但它是在 B 中创建的。所以 mappedBy 只是一个反向引用B 在这种关系中。

@OneToOne(mappedBy = "a")

【讨论】:

    猜你喜欢
    • 2013-08-20
    • 1970-01-01
    • 1970-01-01
    • 2021-05-22
    • 2017-01-23
    • 1970-01-01
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多