最近接手的项目中都需要翻页功能,而翻页的数据有多又少,实际经验得出了这篇博文。
所谓的真假分页的实质区别在于:1.是否每次翻页都需要查询数据;2.预测查询结果数据集是否庞大。
那么在网站开发的过程中,到底什么是真分页什么是假分页呢??我们先看两个例子:
1.相信大家在用搜索引擎的时候注意到了页面地下的翻页部分。下面是百度的搜索结果分页界面截图:
2.在一些网站中见到页面不是很多的翻页。例如查看某一篇新闻时,当文章过长时,页面会出现分页,如下:
那么我上面举的两个例子正好一个是真分页一个是假分页。
前面提到,真分页跟假分页的本质区别是
是否每次翻页都需要查询数据。看例一中,对于像谷歌百度这样的大数据储备搜索引擎来说,每一次用户的搜索结果要么是没有搜索到,要么就是搜索到数以万计的结果。像这样庞大的数据量一次性读取出来是需要较长时间的。想象一下,当你在百度搜索“苍井空”会出来多少条搜索结果??别说,我还真试了一下,下图为证:
5000多万的数据量是多么的庞大,若一次性读取出来的话,还没等你看着苍老师的**,你早就菊花谢一地了。。。。所以很明显,搜索引擎肯定是每次翻页都向服务器提交请求查询数据的,那么也就很明显了,例一中的就是真分页!反之,若预测查询的结果集数据量较少,那么就不需要每次都向服务器提交post请求,故 例二中的就是假分页!
总结:
1.真分页:在预测搜索结果数据量较大的时候,为了提高用户体验度,使每次翻页响应的平均时间趋近于更短,请使用真分页。实现方式有很多,可以用控件(例如asp.net使用AspNetPager控件等等),最常用的就是ajax异步刷新绑定即可,教程请自行百度。
2.假分页:在预测搜索结果数据量较小的时候,为了减轻服务器的"困扰",可以一次性读将数据读取出来存放到临时变量里面,当翻页的时候截取数据结果重新绑定到相应控件上。
本文通过对比搜索引擎和新闻阅读中的分页实例,详细解释了真分页与假分页的概念及其实现方式。针对不同场景,提供了提升用户体验和减轻服务器负担的技术建议。
1134

被折叠的 条评论
为什么被折叠?



