3

我们正在为我们的新项目使用 JPA。我们有一个具有判别器的继承关系。

我们正在尝试从我的超类表中删除鉴别器字段,但我们无法弄清楚如何使用 eclipselink 来实现这一点。我们知道这可以通过休眠实现,有谁知道如何通过 eclipselink 实现这一点?

您可能想知道我们为什么要实现这一点(我知道使用鉴别器更快,因为它消除了对其他表的存在检查的需要),这是因为我们尝试实现以下内容:JPA 多个鉴别器值(请参阅问题和答案)。

4

1 回答 1

3

我不相信这会按照你想要的方式工作。当您查询 ID 值为 1 的组织时,您返回的实体可以是组织、客户或供应商。Java 不允许类型一次全部为 3,至少不是以您设置继承的方式。由于组织仍然可以在没有供应商或客户的情况下存在,因此继承对我来说没有意义。

这 3 个表应该代表不同的实体——一个组织可以有一个客户名称和/或一个供应商名称。

于 2012-08-13T15:12:00.417 回答