Java 冬眠中的遗传
我在hibernate中使用继承, 我有表数据库中的Atom、Person和Company。我需要这样做:Java 冬眠中的遗传,java,hibernate,inheritance,Java,Hibernate,Inheritance,我在hibernate中使用继承, 我有表数据库中的Atom、Person和Company。我需要这样做: @Entity @Inheritance(strategy = InheritanceType.JOINED) public abstract class Atom { .... } public abstract class Contact extends Atom { .... } @Entity public class Person extends Contac
@Entity
@Inheritance(strategy = InheritanceType.JOINED)
public abstract class Atom {
....
}
public abstract class Contact extends Atom {
....
}
@Entity
public class Person extends Contact {
.......
}
@Entity
public class Company extends Contact {
.....
}
联系人没有表
我无法作为实体联系,因为它没有表。我打算放置与Atom相同的类注释
@Entity
@Inheritance (strategy = InheritanceType.JOINED)
public abstract class extends Atom Contact
但是搜索联系人表,该表不存在有关MappedSuperclass的更多信息,请阅读这些文档:
我认为
Atom
和Contact
实际上应该用MappedSuperClass
进行注释。实际上是否有一个表用于Atom
?如果Contact没有表,为什么要创建一个类?@Thomas Atom是另一个类的父类,Atom有一个表。联系人的属性与个人和个人共享Company@AlfredoO我不想要一张联系人表原子的数据是什么还要注意的是,继承策略JOINED
需要为Contact
创建一个表,否则连接将不起作用。或者,将公共属性设置为可嵌入对象,并将其嵌入到公司
和个人
中。