4

我有一个从另一个可嵌入类 XYZ 扩展的可嵌入类 ABC。ABC 的对象嵌入在一个实体中。与实体对应的表仅包含 ABC 的元素,而不包含 XYZ 的元素。我应该怎么做才能得到它们?

我听说描述符定制器会起作用。我该怎么做?还有其他方法吗?

4

3 回答 3

1

oracle javaEE 的这个文档可能会对您有所帮助。据此, InheritanceType.SINGLE_TABLE 是默认策略。您可能需要 InheritanceType.TABLE_PER_CLASS 来满足您的要求。

它已在Entity Inheritance Mapping Strategies主题中进行了描述,但我相信它也可能适用于“可嵌入”。

于 2013-07-16T05:34:31.670 回答
0

您需要在 DescriptorCustomizer 中为 XYZ 设置 InheritancePolicy classIndicatorField。然后您需要为扩展 XYZ 的 ABC 定义聚合描述符,您可能需要一个 SessionCustomizer。

于 2012-01-09T15:50:30.340 回答
0

有人可以举例说明如何编写这个 DescriptorCustomizer 吗?我有同样的事情,我的 XYZ 类有一堆字符串和 uid。我无法让具有嵌入式 ABC 的对象显示来自 XYZ 的字段。(我能做到的唯一方法是将所有 XYZ 字段的吸气剂放在 ABC 中,这不好)

于 2015-02-03T05:52:57.160 回答