我有两个嵌套复合主键的类( B的复合主键包含A的复合主键)
class A {
@EmbeddedId
APk aId;
}
@Embeddable
class APk {
@Column
Long x;
@Column
Long y;
}
class B {
@EmbeddedId
BPk bId;
}不推荐使用hibernate中的组合主键:为B实现主键类型的推荐方法是什么
备选方案1-嵌入A的PK?
备选方案2-还是在更扁平化的实现中声明所有3个属性?
@Embeddable
class BPk {
// Alternative 1
@Embedded
APk aId;
@Column
Long z;
}
@Embeddable
class BPk {
// Alternative 2
@Column
Long x;
@Column
Long y;
@Column
Long z;
}发布于 2014-08-20 21:25:41
这两种选择之间没有太大的区别。如果需要,您可以在这两种情况下覆盖属性的映射。如果APk被多次重用,则备选方案1会更好。否则,使用alternative 2保持简单。
https://stackoverflow.com/questions/25403617
复制相似问题