Java Hibernate:为什么装载两个袋子会产生笛卡尔积?

Java Hibernate:为什么装载两个袋子会产生笛卡尔积?,java,hibernate,jpa,Java,Hibernate,Jpa,当一个人试图急切地装载两个行李时,会抛出以下异常 org.hibernate.loader.MultipleBagFetchException:无法同时执行 取多个包 根据以下职位: Hibernate不允许获取多个包,因为这样会生成笛卡尔积 两篇文章都建议使用集合而不是非索引列表(包) 我的问题是: 为什么尝试装载两个袋子会生成笛卡尔积,而使用集合则不会 在这两种情况下都会生成笛卡尔乘积-对于袋子和集合。使用什么并不重要 本声明的含义: Hibernate不允许获取多个包,因为这样会生成笛

当一个人试图急切地装载两个行李时,会抛出以下异常

org.hibernate.loader.MultipleBagFetchException:无法同时执行 取多个包

根据以下职位:

Hibernate不允许获取多个包,因为这样会生成笛卡尔积

两篇文章都建议使用集合而不是非索引列表(包)

我的问题是:


为什么尝试装载两个袋子会生成笛卡尔积,而使用集合则不会

在这两种情况下都会生成笛卡尔乘积-对于袋子和集合。使用什么并不重要

本声明的含义:

Hibernate不允许获取多个包,因为这样会生成笛卡尔积

Hibernate可以使用集合处理笛卡尔积的结果,而不能使用包。您可以参考此处的示例: