0

我正在寻找有关何时使用上述关系的一些说明。

例如,我有一个由 B 类的实例引用的 A 类。

这种关系应该建模为 OneToMany 并在类 A 中定义一个类 B 的集合,还是由 ManyToOne 建模并在类 B 中引用类 A?

我的问题是关系的选择是否完全取决于程序员,或者依赖于应用程序还是依赖于 JPA?

4

1 回答 1

1

OneToMany 和 ManyToOne 是同一枚硬币的两个面。如果关联是单向的(也就是说,它不是双向的),那么关系的选择与选择哪一方拥有关系是一样的。例子:

  • 您需要从 1 个 A 到许多 B 的单向关系,其中 A 是所有者。唯一的选择是 OneToMany。
  • 您需要从 1 个 A 到多个 B 的单向关系,其中 B 是所有者。唯一的选择是多对一。

如果关联是双向的,那么假设您同时使用 OneToMany 和 ManyToOne。选择所有者并不强迫您做出非此即彼的决定。


更多阅读@Java EE 6 教程:实体

于 2012-09-28T02:05:17.243 回答