正如您在本主题{$ 3}}中所看到的,我为每种单元类型都有可嵌入的类。 我有一个具有以下定义的实体A
@Entity
@Table(name = "class_x")
@PrimaryKeyJoinColumn(name = "class_x_id")
public class ClassX {
/**
*
*/
private static final long serialVersionUID = -4924441463209260247L;
public ClassX () {
super();
}
@Column
private String name;
/** rated Apparent Power. */
@Embedded
@AttributeOverrides({
@AttributeOverride(name = "value", column = @Column(name = "aColumn_value")),
@AttributeOverride(name = "unit", column = @Column(name = "aColumn_unit")),
@AttributeOverride(name = "multiplier", column = @Column(name = "aColumn_multiplier"))
})
private Temperature aColumn;
/** Reference short circuit voltage. */
@AttributeOverrides({
@AttributeOverride(name = "value", column = @Column(name = "bColumn_value")),
@AttributeOverride(name = "unit", column = @Column(name = "bColumn_unit")),
@AttributeOverride(name = "multiplier", column = @Column(name = "bColumn_multiplier"))
})
private Percentage bColumn;
}
我将hibernate配置为使用create-drop从我的实体创建表。 class_x 表已创建,它只有 class_x_id 和名称列。不会创建可嵌入对象的列。我找不到任何问题/解决方案。
答案 0 :(得分:0)
问题在于我的可嵌入类定义。我使用的是继承的可嵌入对象。这在JPA中不起作用。现在,我已将基本抽象单元定义为MappedSuperClass。超级课程是可嵌入的。因此,可嵌入对象继承自@mappedsuperclass。其实我读到Jpa也没有支持这个。但它现在有效。