一次性检索实体及其相关实体

时间:2016-06-15 08:19:40

标签: hibernate

我的模型中有一些ManyToMany关系。当我从域中检索所有实体时,是否有一种方法,通过配置,一次检索相关实体?我将在下面举一个例子。

Aliment可能包含多个Nutrient,而许多Nutrient中可能包含Aliment。这转换为3个表:alimentsnutrientsaliments_nutrients。相应的映射将是:

@Entity
public class Aliment {

    @ManyToMany(fetch = FetchType.EAGER)
    @JoinTable(name = "aliments_nutrients",
            joinColumns = { @JoinColumn(name = "aliment_id", nullable = false) },
            inverseJoinColumns = { @JoinColumn(name = "nutrient_id", nullable = false) })
    @Fetch(FetchMode.SUBSELECT)
    private Set<Nutrient> nutrients = new HashSet<>();

}

当我选择所有Aliment时,我最终选择了Nutrient的N子选项。在这种情况下,我宁愿让Hibernate发出三个请求(* FROM aliments* FROM aliments_nutrients* FROM nutrients),并从这些请求构建映射。谢谢你的指示。

0 个答案:

没有答案