gpt4 book ai didi

java - @OneToMany 注解有用吗?

转载 作者:搜寻专家 更新时间:2023-11-01 03:33:00 25 4
gpt4 key购买 nike

在宠物项目中使用此类注释似乎效果很好,我是老板,有两名员工等。但在实际规模的项目中,您以与 100.000 次调用相关的会计年度或拥有 1.000.000 名公民的城市结束并天真地尝试在 ArrayList 中检索所有这些会导致 OutOfMemory 错误。

一个好的方法是不定义这种关系(但@ManyToOne)并检索分页的结果以对它们做任何你想做的事。

那么,¿是否有任何观察者模式或类似的模式来处理大型数据库模型? ¿可以使用任何配置来管理内存?

最佳答案

假设您有一个显示特定城市的所有市民数据的应用程序。这个城市有 1.000.000 名市民,因此您想要在用户界面上显示这么多行。

您认为一次显示这么多数据有意义还是您认为分页是必要的?我会说后者是这种情况,因为没有人会在 UI 上阅读 100 万条记录。

只是建议一下,如果您有这么多数据,请不要使用实体在 UI 上显示信息。请改用包含您需要显示的确切数据的投影 + 您也可以轻松引入分页。

有多种方法可以定义投影,最简单的方法是使用 Spring Data JPA的功能,基本上是定义接口(interface)。

当然,如果您有一项必须处理所有公民的工作,那么一次获取所有内容也不是一个好主意,而是进行某种批量执行。将您的数据拆分成单独的部分,然后处理这些部分。在这种情况下,使用投影也是一个好主意。

关于java - @OneToMany 注解有用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42719049/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com