Java 没有相关对象时ElementCollection上的LazyLoadingException

Java 没有相关对象时ElementCollection上的LazyLoadingException,java,spring-data,jpql,Java,Spring Data,Jpql,我的关系定义如下: @ElementCollection(fetch = FetchType.LAZY) @CollectionTable(name = "recipe_type", joinColumns = @JoinColumn(name = "recipe_id")) @Column(name = "type") @OrderColumn(name = "sort_order") private List<String> types; @ElementCollection(

我的关系定义如下:

@ElementCollection(fetch = FetchType.LAZY)
@CollectionTable(name = "recipe_type", joinColumns = @JoinColumn(name = "recipe_id"))
@Column(name = "type")
@OrderColumn(name = "sort_order")
private List<String> types;
@ElementCollection(fetch=FetchType.LAZY)
@CollectionTable(name=“recipe\u type”,joinColumns=@JoinColumn(name=“recipe\u id”))
@列(name=“type”)
@OrderColumn(name=“排序顺序”)
私有列表类型;
我尝试用JPQL检索它:

@Query("SELECT r FROM MealPlanWeekRecipe r " +
        "LEFT JOIN FETCH r.recipe " +
        "LEFT JOIN FETCH r.recipe.types " +
        "LEFT JOIN FETCH r.mealPlan " +
        "WHERE r.id.weekId = :week_id " +
        "AND r.id.mealPlanId IN :inclList")
LinkedHashSet<MealPlanWeekRecipe> findByIdWeekIdAndIdMealPlanIdInEagerly(
        @Param("week_id") Long weekId,
        @Param("inclList") Collection<Long> mealPlanIds);
@Query(“从MealPlanWeekRecipe r中选择r”+
“左连接获取r.recipe”+
“左连接获取r.recipe.types”+
“左连接获取r.mealPlan”+
“其中r.id.weekId=:week\u id”+
“和r.id.mealPlanId IN:inclList”)
LinkedHashSet急切地找到了YidWeekid和DMealPland(
@Param(“周id”)长的一周,
@参数(“包含列表”)采集平面ID);
有人能解释一下为什么当配方没有任何类型并且我试图访问它时,我会有LazyLoadingException吗?它不应该至少为空,或者为空列表吗