【发布时间】:2014-02-18 04:34:31
【问题描述】:
多继承实体复合键情况下如何使用IdClass?
@IdClass(IdClassEntity1.class)
class Entity1 {
private long e1pk1;
private long e1pk2;
}
@IdClass(IdClassEntity2.class)
class Entity2 extends Entity1 {
private long e2pk1;
private long e2pk2;
}
class Entity3 extends Entity2 {
private long e3pk1;
private long e3pk2;
}
IdClassEntity2 应该是什么:
class IdClassEntity2 {
private long e1pk1;
private long e1pk2;
private long e2pk1;
private long e2pk2;
}
或
class IdClassEntity2 {
private IdClassEntity1 idClassEntity1;
private long e2pk1;
private long e2pk2;
}
【问题讨论】:
-
它们是默认映射的,只需要添加MappedSuperClass或@Entity即可,不需要在子类中重新定义。