2
我有id类中的鉴别器列的继承问题。该表将被创建成功,但每个条目在descriminator列中都会获得“0”值。Hibernate 3.3继承@IdClass中的@DiscriminatorColumn
这里是我的基类:
@Entity
@Inheritance(strategy = InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name = "type", discriminatorType = DiscriminatorType.INTEGER)
@IdClass(BasePK.class)
@SuppressWarnings("serial")
public abstract class Base implements Serializable {
@Id
protected Test test;
@Id
protected Test2 test2;
@Id
private int type;
....
}
这里是我的基PK类:
@Embeddable
public static class BasePK implements Serializable {
@ManyToOne
protected Test test;
@ManyToOne
protected Test2 test2;
@Column(nullable = false)
protected int type;
...
}
而且我有几个子类是这样的:
@Entity
@DiscriminatorValue("1")
@SuppressWarnings("serial")
public class Child extends Base {
}
所以,如果我坚持一个新的Child类我希望有“1”类型,但我得到“0”。它在我从BasePK类中删除类型并直接添加到我的基类中时起作用。但类型应该是关键的一部分。
任何帮助将不胜感激。
谢谢。奇迹般有效。 –