我有 3 个表“顾问”、“患者”和“诊断”。诊断将顾问和患者的属性作为外键。我想知道如何在 Spring 展示这一点。到目前为止我所拥有的是
顾问.java
private String name;
private String pos;
@OneToMany(fetch = FetchType.LAZY, mappedBy = "consultant")
private List<Diagnosis> diagnosis;
Diagnosis.java
public class Request {
private String token;
private String comment;
private boolean status;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "Patient_id")
@JoinColumn(name = "Consultant_id") //not sure about this syntax
private Consultant consultant;
private Patient patient;
Patient.java
private String name;
private int pid;
@OneToMany(fetch = FetchType.LAZY, mappedBy = "patient")
private List<Diagnosis> diagnosis;
请问这是怎么回事?我正在使用 postgresql。
最佳答案
如果您有 2 个实体,为什么要注释一个字段?每个关系都应该正确注释:
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "Patient_id")
private Patient patient;
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "Consultant_id")
private Consultant consultant;
关于java - JPA,Spring映射多个实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59125933/