0

当我们在两个表之间有一个多对多关联,并且我们为这些表创建实体 Java bean 时,在每个表中创建一个集合以引用与其关联的项目有什么好处。

例如,我们有两个表AB它们以多对多的方式相互关联,并让AB数据库中的表链接起来。

public class  A {
    ...

    List<B> ListBs;   // what is the benefit to create this list, the same question in class B.

    ...
}
4

1 回答 1

1

它的好处很明显,使用JPA可以选择List加载实体本身,而不必执行单独的查询。

LazyInitialization但是,如果您管理不当,这可能会有点危险。List不建立它会导致每次加载实体时都从数据库中获取整个结果。如果您尝试从关闭List的项目中恢复项目,也将其设置为延迟初始化可能会带来一些问题。Session

总之,您必须谨慎管理这种关联。想想你的应用程序需要加载什么,并使你的模型适合你真正需要的。如果使用惰性对象,请注意在先前Session已过期的情况下重新加载对象。

于 2013-09-05T13:04:42.513 回答