分页的实现(普通分页,不使用插件)

首先我们应该知道分页实际上就是把很多条数据不全显示到页面上,而分段的来显示。

分析思路

平常我们在MySQL中想要查询数据是这样写:
select*from tb_goods g,tb_type t where t.id=g.typeid;
这样子就可以把全部数据显示出来,想要实现分页就必须用到的一个词limit(分页高级名字:物理分页),那么接下就可以这样写SQL语句了:
select*from tb_goods g,tb_type t where t.id=g.typeid limit num,nums;
num:从第几条数据开始。
nums:一共显示几条数据。

已知每页要显示nums=5 条数据,已知要查询第page=1 页的数据 num=nums*(page-1)

第1页:limit 0,5; 0=nums(page-1)
第2页:limit 5,5; 5=nums
(page-1)
第3页:limit 10,5; 10=nums*(page-1)

看到现在是不是感觉有点思路了,那么已知一共有count=24条数据,每页显示nums=5条,请问总共应该有多少个页面?

  1. count<nums 总页数=1
  2. count%nums==0, 总页数=count/nums
  3. count%nums!=0, 总页数=count/nums+1

查询一共有几条数据可以这样写:
select count(*) from tb_goods g,tb_type t where t.id=g.typeid

具体实现代码:

1.servlet代码

2.DataUtil代码

3.mapper代码

4.jsp页面

posted on 2022-05-31 21:14  鹏星  阅读(184)  评论(0编辑  收藏  举报

导航