我有一个应用程序,主要显示数据库中的表数据。但这些表需要应用分页、排序、筛选。对于排序和筛选,它们需要应用于整个列表,而不仅仅是第一。页面。我脑子里有三个想法:
哪一种方式最能达到这三个数字?或者还有其他更好的方法我没想过。
谢谢你的帮助或建议。
发布于 2014-09-11 17:55:37
你不能说涉及了多少数据。如果是很多,那么您肯定不想到处发送,例如,不要将20 to发送到浏览器中的javascript来呈现。
通常,最好是缩小结果集,并尽可能接近数据库进行所有操作。但是,您不希望对动态SQL过于疯狂。您不希望用户能够对非索引数据造成一些巨大的查询。
我非常喜欢spring,并认为如果您能够将spring的分页功能与Repository类中的手工优化查询结合起来,那将是“最好的”。
发布于 2021-09-25 14:13:08
服务器端分页几乎总是会赢。而不仅仅是应用程序层的服务器端,而是通过数据库进行分页。从性能的角度来看,向数据库请求一个小的有限子集并返回这将是最优的性能。
几年前,我开发了一个应用程序,其中服务器端代码从DB中提取所有数据(大约200 k行--这在业界并不多),然后通过代码分页。渲染页面花费了30-50秒的时间。当我切换到DB分页时,它下降到1.5秒。
现在,这是服务器端分页,甚至连前端后端都没有。通过jquery (在大型数据集上)或甚至通过中等大小的数据集执行此操作意味着必须将所有内容发送到浏览器。这手术太贵了。
https://stackoverflow.com/questions/25793827
复制相似问题