JPA使用findById.无法查询到子表的字段属性
程序员文章站
2024-01-19 09:22:10
...
原因:
在子表中使用了懒加载,则无法一下子拿到所需要的属性
@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
发现项目中这两个经常会互用,原因和优缺点是什么?