首页 > 解决方案 > 分页与来自服务器的所有数据

问题描述

在 Angular 8+ 中,如果我们需要显示记录列表,我们将以分页方式显示结果。

我们拥有超过 100 万条记录,未来记录也会增加。

我使用 Spring Boot 和 MYSQL 作为数据库

但是最好的方法是什么

  1. 一次从服务器获取所有数据并在客户端处理分页。

  2. 一次获取 10 条记录并显示,当用户单击“下一步”按钮时,从服务器获取下 10 条记录。

标签: javaangularspringspring-mvc

解决方案


我强烈建议您使用变体 #2。

进行分页的主要原因并不是因为一次只在 UI 中显示几个条目是有意义的。相反,分页只允许您从大型数据集(例如您的数据集)中传输必要的条目。这极大地提高了性能并减少了必须从服务器发送到客户端的数据量。

变体 #1 的性能会很差,因为客户端必须获取所有 1,000,000 条记录才能仅显示其中的 10 条。这没有多大意义,直接违背了分页的想法和优势。

另一方面,变体 #2 只会获取实际显示的条目。它只会传输大约 0.00001% 的变体 #1 会传输的数据。


推荐阅读