【发布时间】:2019-12-15 05:11:05
【问题描述】:
我有一个组织表、部门表和员工表。
一个组织有很多部门,一个部门有很多员工。
在执行 findByOrganizationId(PK of Organization) 时,我看到 Employee 表也被查询了 n 次,其中 n 是组织的部门数。
如何避免在执行相同操作时获取 Employee 数据? 我在这里看到一个 N+1 问题。但不确定如何在嵌套的一对多映射中避免它。
获取类型设置为 LAZY。
@OneToMany(mappedBy = "department", orphanRemoval = true, cascade = CascadeType.ALL, fetch = FetchType.LAZY)
@Fetch(FetchMode.JOIN)
private List<Employee> employee;
【问题讨论】:
标签: sql hibernate join spring-data-jpa fetch