【发布时间】:2020-10-27 16:22:10
【问题描述】:
我有两个 @OneToOne 实体:
...
public class A {
...
@OneToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL, orphanRemoval = true)
@JoinColumn(name = "b_id", nullable = false)
private B b;
...
}
...
public class B {
...
@OneToOne(fetch = FetchType.LAZY, mappedBy = "b", cascade = CascadeType.ALL, orphanRemoval = true)
private A a;
...
}
我正在使用 spring data JPA JpaRepository
是否可以使用延迟初始化的 A 属性获取所有 B 实体(当我获取所有 时不获取 A 属性B 个实体?如果没有,这种情况下是否可以避免 N+1 选择?
编辑:我的问题与我如何使 JPA OneToOne 关系变得懒惰How can I make a JPA OneToOne relation lazy 不同,因为我的问题是相反的,我想获取父实体和/或在获取它时避免 N+1 选择。
【问题讨论】:
-
这能回答你的问题吗? How can I make a JPA OneToOne relation lazy
-
不,我的问题是其他方式。如何使用“mappedBy”获取父实体。
标签: hibernate jpa spring-data-jpa