2

我有遗产

抽象类A:

@MappedSuperclass
public abstract class A {

    public Integer id;

    @Id
    @Column(name = "ID", nullable = false)
    public Integer getId() {
        return this.id;
    }

    public void setId(Integer id) {
        this.id = id;
    }
}  

子类 B,使用序列:

@Entity
@Table(name = "B")
public class B
    extends A {

    private String descripction;

    @Override
    @SequenceGenerator(name = "SEQ_TRANSACTIONID", sequenceName = "SEQ_TRANSACTION", allocationSize = 1)
    @GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQ_TRANSACTIONID")
    public Integer getId() {
        return id;
    }

    @Column(name = "DESCRIPTION", nullable = false)
    public String getDescripction() {
        return descripction;
    }

    public void setDescripction(String descripction) {
        this.descripction = descripction;
    }
}

和 C 子类,不需要序列:

public class C extends A {
}

B 类需要生成序列,但 C 类不需要。

我在“create-drop”中使用“hibernate.hbm2ddl.auto”运行项目。但从未创建 SEQ_TRANSACTIONID。

我已经建立了这个测试,所以你可以重现错误。

请帮帮我.....

提前致谢。

4

0 回答 0