前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >java如何实现分页查询_java分页计算页数

java如何实现分页查询_java分页计算页数

作者头像
全栈程序员站长
发布2022-11-10 14:35:07
1.9K0
发布2022-11-10 14:35:07
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

思路,假设数据库里的某张表的数据的条数是185条,我要实现的是一页显示10条,也就是说,展示完所有的数据需要19页,每一页的号是,1-10;11-20,22-31;

第一页是a,a+9,第二页就是(a+9)+1,((a+9)+1)+9….一直到(b+9)>185;

代码语言:javascript
复制
package cn.com.servlet;
import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import cn.com.gj.Person_info;
import cn.com.lf.JdbcUtils;
public class Personnel_definition extends HttpServlet {
/**
* 
*/
private static final long serialVersionUID = 1L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);	
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//查询数据库里面数据的总条数
//1.数据库里面数据的总条数;
int countpage=0;
String sql0="select * from person_info";	
ResultSet rs0=JdbcUtils.select(sql0, null);
try {
while(rs0.next()){
countpage++; 
}
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
//每页显示多少行
int limt=10;
//2.如果一页是10条数据的话,那么就是all页
int all=(countpage/limt)+1;
//这个是从前台获取的数据,是上一页还是下一页
int cpage=0;
//这个是上一页还是下一页的数据
String currentpage=request.getParameter("currentpage");
if(currentpage==null||currentpage==""){
cpage=1; 
}
else{
cpage=Integer.parseInt(currentpage);
//如果到了最后一页,用户再点击下一页的时候跳转到第一页
if(cpage==(all+1)){
cpage=1; 
//如果到了第一页,用户再点击下一页的时候跳转到最后一页
}else if(cpage==0){cpage=18;}
}
//3.开始查询的数据
int start=limt*(cpage)-9;
//4.结束查询的数据
int end=limt*cpage;
//这个代码是查询数据库里面的person_info,然后循环遍历显示在页面上
//sql语句的意思就是limit 索引,显示索引以后多少行
String sql="select * from person_info limit ?,?";	
//如果到了最后一页的时候,
if(end>countpage){
limt=countpage-start+1;
}
int sz[]={start,limt};
ResultSet rs=JdbcUtils.selectint(sql, sz);
ArrayList<Person_info> list=new ArrayList<Person_info>();
try {
while(rs.next()){
//把获取的值放在pi里面,再把pi放在集合里面
Person_info pi=new Person_info(rs.getString(1), rs.getString(2), rs.getString(3), rs.getString(4), rs.getString(5), rs.getString(6));
list.add(pi);
}
request.setAttribute("list", list);
request.setAttribute("cpage", "尾页");	
request.setAttribute("cpage", cpage);
request.setAttribute("all", all);
request.getRequestDispatcher("Personnel_definition.jsp").forward(request, response);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
java如何实现分页查询_java分页计算页数
java如何实现分页查询_java分页计算页数

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/188888.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月27日 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档