JPA(在本例中为 Eclipselink)是否总是返回 IndirectList,其中实体有一个列表?
该列表可以吗?或者应该将其转换为另一个列表(可能是链接列表)?
Analysis
如果我们看一下 EclipseLink 的间接列表的 API, 它说:
要使用 IndirectList:声明类型为 IndirectList (jdk1.1) 或 Collection/List/Vector (jdk1.2) 的适当实例变量。
当 TopLink 会在实例变量中放置一个 IndirectList
从数据库中读取包含域对象。与第一个
消息发送到IndirectList,内容从
数据库和正常的集合/列表/向量行为恢复。
如果我们查看间接列表来源,我们会看到,所有的工作都委托给它的原始集合,就像 API 所说的那样。
Answers
JPA(在本例中为 Eclipselink)是否总是返回 IndirectList,其中实体有一个列表?
是的,它总是返回用 IndirectList 包装的指定集合。由于它将所有内部工作委托给包装集合,因此它保留了其工作方式。
该列表可以吗?或者应该将其转换为另一个列表(也许
链表)?
是的,使用IndirectList就可以了。您不需要转换,只需定义您想要的任何类型的集合,并且不用担心 IndirectList,因为它是透明管理的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)