我有2张遗留表:
CREATE TABLE A (
ID NUMBER PRIMARY KEY ,
DATA NUMBER
)
CREATE TABLE A_CONF (
A_ID NUMBER, // FK to A
INFO VARCHAR2(256)
)
为A
创建JPA实体非常简单。但是,我可以检索可以与INFO
实例关联的多个A
字段,因为A_CONF
中没有PK,因此无法为其创建实体?
感谢您的帮助。
答案 0 :(得分:1)
好像你正在寻找JPA所谓的“元素集合”:
@Entity
public class A {
@Id
private Long id;
private Long data;
@ElementCollection
@CollectionTable(name="A_CONF", joinColumns=@JoinColumn(name="A_ID")) // A_ID would be the default join column
@Column(name="INFO")
private Set<String> infos; // using Set assuming unique values
}
答案 1 :(得分:0)
您可以在模型类中定义主键,即使您的表没有主键,只需在模型中选择一个或多个列并将它们作为ID。