为每个子实体表生成不同的序列ID-Java/Hibernate
我有一个家长班为每个子实体表生成不同的序列ID-Java/Hibernate,java,hibernate,entity,Java,Hibernate,Entity,我有一个家长班 @Entity @Inheritance(strategy=InheritanceType.TABLE_PER_CLASS) public abstract class AbstractEntity { @Id @SequenceGenerator(generator="idgen_di_at_au", strategy=GenerationType.SEQUENCE) private Long id; } 以及与其他列相同的两个子类 这里的问题是,我希望避免子类在表之间共享
@Entity
@Inheritance(strategy=InheritanceType.TABLE_PER_CLASS)
public abstract class AbstractEntity {
@Id
@SequenceGenerator(generator="idgen_di_at_au", strategy=GenerationType.SEQUENCE)
private Long id;
}
以及与其他列相同的两个子类
这里的问题是,我希望避免子类在表之间共享自动增量ID
我不能在子类上保留@Id,因为它在这里是强制性的。是否存在两个子表共享自己的ID集的替代方案
谢谢,我可能在这里遗漏了一些东西,但为什么不让每个子类都有自己的id声明和@SequenceGenerator?如果我用给定的格式定义父类,父类需要有@id列,我不确定是否有任何方法来定义层次结构。