JPA使用findById.无法查询到子表的字段属性

原因:

在子表中使用了懒加载,则无法一下子拿到所需要的属性

@OneToOne(cascade = CascadeType.ALL, fetch = FetchType.LAZY, orphanRemoval = true)
@JoinColumn(name = "details_id", referencedColumnName = "id")
private Details _details;

1、FetchType.LAZY:懒加载,加载一个实体时,定义懒加载的属性不会马上从数据库中加载。

2、FetchType.EAGER:急加载,加载一个实体时,定义急加载的属性会立即从数据库中加载。

把上面的

fetch = FetchType.LAZY改为
fetch = FetchType.EAGER

发现项目中这两个经常会互用,原因和优缺点是什么?

猜你喜欢

转载自blog.csdn.net/wang0112233/article/details/108093596
今日推荐