jsp实现mysql分页的当前页数_JAVA和MySQL实现分页和页面跳转指定当前显示页数的问题...

本文介绍了使用JAVA和MySQL实现分页查询,并着重讲解了如何实现分页导航中页面跳转指定当前显示页数的效果。通过判断当前页码,动态生成可点击的页码范围,确保了导航的滚动效果。核心代码包括根据当前页码调整显示的页码段,以及输出页码链接。
摘要由CSDN通过智能技术生成

首先,分页需要JDBC基础。所以分页也没什么好说的,主要是分页算法。直接扔出代码String sql2 = "select * from job limit ?,? ";

ps = conn.prepareStatement(sql2);

ps.setInt(1,(pageNow-1)*pageShowNum);

ps.setInt(2,pageShowNum);

rs = ps.executeQuery();

for(int i = 0;i

if(rs.next()){

out.println("

");

out.println("

"+rs.getString(5)+"");

out.println("

"+rs.getString(6)+"");

out.println("

"+rs.getString(4)+"");

out.println("

"+rs.getString(7)+"");

out.println("

"+rs.getString(8)+"");

out.println("

"+rs.getString(3)+"");

out.println("

");

}

}

out.println("");

其中有几个分页算法的重要变量

int pageNow = 1;//当前页码int pageAll = 0;//一共多少页

int pageShowNum = 10;//每页显示多少条内容

int rowAll = 0;//一共多少条内容下面,重点来了。如何实现类似于百度下面的页面点击跳转效果呢。就是下面只指定的显示出了10页,然后当你点击头6页,下面的页面并不会动,当你点击第七页的时候,第一个编程2,最后一个编程11.点击第9页,第一个可点击页编程4,最后一页变成13。在页尾也是,在点击页尾最后4页的时候不会动,比如一共30页。点击30,29,28,26,27的时候,

下面一直显示,21,22,23,24,25,26,27,28,29,30。

但是当你点击25时下面会显示  18 ,19,21,,22,23,24,25,26,27,28

笔者能力有限,实在 没看懂怎么个效果可以去百度看看。反正就是类似于滚动的这用效果,往后点就往后滚,往前点就会往前滚。

当然实现这个主要就是算法问题

主要是看当前页

如果当前页小于等于10,那么直先输出1-10

如果当前页-6  >  0并且 当前页 +4 小于等于总页数

就显示出,当前页-6到当前页+4页

如果当前页+4大于总页数,就显示出最后10页

,下面扔出算法代码

if(pageNow-6<0){

for(int i = 1;i<11;i++){

out.println("【"+i+"】");

}

}

if(pageNow+4>pageAll){

for(int i = pageAll-10;i<=pageAll;i++){

out.println("【"+i+"】");

}

}

if(pageNow>=6&&pageNow+4<=pageAll){

for(int i = pageNow-5;i

out.println("【"+i+"】");

}

for(int i = pageNow;i<=pageNow+4;i++){

out.println("【"+i+"】");

}

}

out.println("【尾页】");

out.println("【下一页】");

out.println("");

out.println("");

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值