问题在于,我正在扩展一个通用框架并将其应用于特定的项目,该框架适用于Spring和Hibernate,这里我有两个类, GenericClient 和 SpecificClient ,它们都是实体, SpecificClient 继承自 GenericClient 。
GenericClient 是框架的一部分,我不能修改它,因为这个类没有声明@Inheritance(strategy = InheritanceType.JOINED)
唯一可以使用的继承类型是{{1因为这是注释的默认值。
目前我的代码正在使用 SpecificClient 中声明的InheritanceType.SINGLE_TABLE
,即使它不是继承树的根。
由于版本问题,我必须找到使用@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
的方法,好处是 SpecificClient 将始终是继承树的最后一个类,但可以是不同的不同的项目。
InheritanceType.JOINED
吗?答案 0 :(得分:0)
您可以使用XML来定义此继承树的映射。这是relevant section of the documentation。
答案 1 :(得分:0)
如果您无法修改希望Hiberante用作实体的类,则可以使用.hbm.xml配置文件来执行此操作。这些可以与注释混合使用,因为所有功能都应该可用。