Hibernate 每个子类的表与重复列

Hibernate 每个子类的表与重复列,hibernate,Hibernate,在我的应用程序中,我有以下层次结构: 最后用户 LastUserUpdatedTimestamp BaseObject是一个@MappedSuperclass,它由Transaction扩展,而Transaction又由SubTransaction扩展 事务对象的定义如下: @Entity @Table(name = "T_TRANSACTION") @Inheritance(strategy = InheritanceType.JOINED) public class Transactio

在我的应用程序中,我有以下层次结构:

  • 最后用户
  • LastUserUpdatedTimestamp
BaseObject是一个@MappedSuperclass,它由Transaction扩展,而Transaction又由SubTransaction扩展

事务对象的定义如下:

@Entity
@Table(name = "T_TRANSACTION")
@Inheritance(strategy = InheritanceType.JOINED)
public class Transaction extends BaseObject implements Serializable {
    //etc
}
子事务如下所示:

// Primary key join columns
public class SubTransaction extends Transaction implements Serializable {
事务和子事务映射到每个表都有审核列(是,名称相同)的表

  • 最后用户
  • 最后更新的时间戳
当我尝试持久化子事务时,会抛出一个异常,该异常与事务的审核列为null有关


有人能提供一些建议吗?

据我所知,您有一个类似

   BaseObjectTable
  /               \
 \/               \/
Transaction     Subtransaction
但地图显示他

BaseObjectTable
  /
 \/
Transaction
  /
 \/
Subtransaction
要实现第一个,您可以尝试在子事务上设置
@Extends(BaseObject)