Java Hibernate映射子类忽略父类

Java Hibernate映射子类忽略父类,java,hibernate,Java,Hibernate,我想用一个公共父类映射很多子类:B扩展a,C扩展a,。。。但是数据库不关心A,B和C没有共同点(没有Id,没有引用…) 是否可以在不添加@Entity的情况下执行此操作 解决方案 @MappedSuperclass public class A { @Id @Column(name="id") private Long id; @Column(name="reference", nullable=false) private String referen

我想用一个公共父类映射很多子类:B扩展a,C扩展a,。。。但是数据库不关心A,B和C没有共同点(没有Id,没有引用…)

是否可以在不添加@Entity的情况下执行此操作

解决方案

@MappedSuperclass
public class A {
    @Id
    @Column(name="id")
    private Long id;

    @Column(name="reference", nullable=false)
    private String reference;

}

@Entity
@Table(name="B")
public class B extends A {
}
在类
A
上使用:

指定一个类,该类的映射信息应用于从该类继承的实体。映射的超类没有为其定义单独的表

@MappedSuperclass
public class A {
    @Id
    @Column(name="id")
    private Long id;

    @Column(name="reference", nullable=false)
    private String reference;

}

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