Java 如何在hibernate中实现继承?
我拥有以下实体:Java 如何在hibernate中实现继承?,java,hibernate,inheritance,orm,Java,Hibernate,Inheritance,Orm,我拥有以下实体: BaseEntity-->包含用户登录信息,如createdBy、createdTime、EditeBy、EditeTime 员工-->包含姓名、地址等员工信息 regular employee-->其中包含薪资、奖金等字段 及 ContactEmployee-->其中包含小时费率、联系期限等 我的继承结构是 在这种情况下,考虑到所有表都具有 id和版本字段(所有表至少应具有这两个字段)。 我使用了“每类表”模型。这对我现在所做的很有效 discriminator列告诉h
-->包含用户登录信息,如createdBy、createdTime、EditeBy、EditeTimeBaseEntity
-->包含姓名、地址等员工信息员工
-->其中包含薪资、奖金等字段 及regular employee
-->其中包含小时费率、联系期限等ContactEmployee
discriminator列告诉hibernate实例化哪个子类,子类可以有其他子类没有的字段,但表需要有所有列(某些行显然为空)。pstanton给出的答案是正确的。。但还有一种方法。。与在Java中实现继承相同。请参考以下映射以获得答案
<union-subclass name="Employee" extends="BaseEntity" table="tb_emp" >
</union-subclass>
<class name="BaseEntity" abstract="true">
</class>
但是我觉得,有了这个,你只能获得1级的继承
考虑到所有表都有id和version字段(所有表至少应该有这两个字段),在这种情况下如何设计数据库结构
如果希望所有表都有id和版本字段,则必须根据具体的类策略使用表。查看或确定您是否正在使用注释