我使用Hibernate作为JPA持久性提供程序。 我只使用JPA功能,而不是特定于hibernate的功能。
使用单个表继承,您必须有一个DTYPE
文本字段(默认名称或选择其他名称),以允许持久性提供程序将数据映射到正确的子类。
我看到的问题是该表将在每行上保留DTYPE
字段,因此它将包含无用的字符串重复项。
我想规范化DTYPE
字段。也就是说,创建一个只包含id和唯一DTYPE字符串字段列表的表。然后,在单继承表中,DTYPE字段将是指向DTYPE表的外键。然后,鉴别器列将成为外键。
是否可以使用JPA映射此类规范化鉴别器列?