分页的实现(普通分页,不使用插件)
首先我们应该知道分页实际上就是把很多条数据不全显示到页面上,而分段的来显示。
分析思路
平常我们在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条,请问总共应该有多少个页面?
- count<nums 总页数=1
- count%nums==0, 总页数=count/nums
- 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页面
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?