如何获得@DiscriminatorColumn()的值?

时间:2010-11-20 12:26:41

标签: java jpa

您好 我在EJB中有继承问题。

之后我会告诉你我的代码
@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 {
}

如何获得

的价值
  

PROJ_TYPE

。我使用nativeQuery的唯一解决方案,但还有另一种解决方案???

抱歉,我的英语和 提前谢谢你

1 个答案:

答案 0 :(得分:2)

还应该可以将鉴别器映射为附加列,只要它不可更新或可插入。

@Column(name="PROJ_TYPE", nullable=false, updatable=false, insertable=false)
private String projectType;