Просто добавьте столбец в таблицу, «владеющий» отношением с ограничением FK. Например:
CREATE TABLE MYENTITYA (
ID BIGINT NOT NULL,
MYENTITYB_ID BIGINT
);
CREATE TABLE MYENTITYB (
ID BIGINT NOT NULL
);
ALTER TABLE MYENTITYA ADD CONSTRAINT SQL100326144838300 PRIMARY KEY (ID);
ALTER TABLE MYENTITYB ADD CONSTRAINT SQL100326144838430 PRIMARY KEY (ID);
ALTER TABLE MYENTITYA ADD CONSTRAINT FKB65AC952578E2EA3 FOREIGN KEY (MYENTITYB_ID)
REFERENCES MYENTITYB (ID);
Это будет отображаться так:
@Entity
public class MyEntityA implements Serializable {
private Long id;
private MyEntityB myEntityB;
@Id
@GeneratedValue
public Long getId() {
return this.id;
}
@OneToOne(optional = true, cascade = CascadeType.ALL)
public MyEntityB getEntityB() {
return this.myEntityB;
}
//...
}
@Entity
public class MyEntityB implements Serializable {
private Long id;
@Id
@GeneratedValue
public Long getId() {
return id;
}
//...
}
Если соотношение между EntityA
и EntityB
не является обязательным, добавьте ограничение NOT NULL
.