【发布时间】:2010-11-12 20:47:18
【问题描述】:
我有两个类 Foo 和 Bar 映射到两个不同的表,我希望它们使用 JOINED 继承策略,但使用两个非键列连接。架构很奇怪,但我坚持下去。这是我的设置:
@Entity
@Table(name="foo")
@Inheritance(strategy=InheritanceType.JOINED)
public class Foo {
@Id
private Integer uniqueFooId;
@Column(name="column1")
private String column1;
@Column(name="column2")
private String column2;
@Column(name="someValue")
private String someValue;
}
@Entity
@Table(name="bar")
public class Bar extends Foo {
@Id
private Integer uniqueBarId;
@Column(name="column1")
private String column1;
@Column(name="column2")
private String column2;
@Column(name="someOtherValue")
private String someOtherValue;
}
我不确定@Inheritance 如何决定使用哪一列加入,但我假设默认情况下它使用主键。我想加入它们的不仅仅是主键以外的一列,而是两列,在本例中为 column1 和 column2。
我什至可能会走错路。我将不胜感激任何帮助或建议。谢谢!
【问题讨论】:
标签: inheritance jpa join multiple-columns joined-subclass