JPA 多个表的外键

Poo*_*ool 5 java database jpa

我们在数据库中有一个表,其结构如下:

referenceId - int foreign key to various tables
tableReference - String defining the table
Run Code Online (Sandbox Code Playgroud)

这是一个好的设计吗?是否可以以某种方式映射这种关系?

jmv*_*ivo 6

很少信息可以为您提供任何解决方案建议,但JPA 联合继承的工作原理如下:

@Entity
@Inheritance(strategy=InheritanceType.JOINED)
@DiscriminatorColumn(name="PROJ_TYPE")
@Table(name="PROJECT")
public abstract class Project {
  @Id
  private long id;
  ...
}

@Entity
@DiscriminatorValue("L")
@Table(name="LARGEPROJECT")
public class LargeProject extends Project {
  private BigDecimal budget;
}

@Entity
@DiscriminatorValue("S")
@Table(name="SMALLPROJECT")
  public class SmallProject extends Project {
}
Run Code Online (Sandbox Code Playgroud)

这将管理数据库中的三个表,其中主表包含用于标识目标表的PROJECT列。PROJ_TYPE