我试图在三个实体中使用springboot使用一对多映射



考虑一个例子1,2和3,1和2之间存在一对多映射关系,2和3之间也存在一对多映射关系。一级实体(PatientLabReport):

@JsonManagedReference
@OneToMany(cascade=CascadeType.ALL,mappedBy="patientLabReport",fetch = FetchType.LAZY)
private Set<LabTestNameByDoctor> labtestNameByDoctor;
第二类实体(LabTestNameByDoctor):
@JsonManagedReference
@OneToMany(cascade=CascadeType.ALL,mappedBy="LabTestNameByDoctor",fetch =        FetchType.LAZY,orphanRemoval = true)
private Set<LabReportList> labReportList;
@JsonBackReference
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name="patient_lab_report_id")
private  PatientLabReport patientLabReport;

第三类实体(LabReportList):

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name="lab_test_name_by_doctor_id")
@JsonBackReference
private  LabTestNameByDoctor LabTestNameByDoctor;

当我试图发布它响应状态=200 OK,但作为回报,错误将是这样的:错误字符串或最大调用堆栈大小超出预期或预期':'而不是'}'

当我试图获得状态码是200OK,但它返回的错误如下:最大调用堆栈大小超出预期或预期':'而不是'}'

这个错误意味着您尝试加载的数据超过了堆栈的容量,通常是512Mb。这要么意味着您正在处理巨大的工作负载,要么意味着您有一些递归性。它看起来不像你有递归,这意味着你应该考虑使用不同的方式加载1.

最新更新