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

java如何实现分页查询_java分页计算页数思路,假设数据库里的某张表的数据的条数是185条,我要实现的是一页显示10条,也就是说,展示完所有的数据需要19页,每一页的号是,1-10;11-20,22-31;第一页是a,a+9,第二页就是(a+9)+1,((a+9)+1)+9….一直到(b+9)>185;packagecn.com.servlet;importjava.io.IOException;import…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

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

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

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分页计算页数

 

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

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

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • vim设置自动添加头部注释

    vim设置自动添加头部注释

    2021年6月4日
    81
  • pycharm不支持32位系统怎么办_pycharm不支持32位系统吗

    pycharm不支持32位系统怎么办_pycharm不支持32位系统吗在32位操作系统中安装pycharm过程中发现的一些问题首先是下载了最新版本的pycharm安装后打开,弹出未发现可执行的文件,然后想到了其他的办法1、下载最新版本的pycharm不能直接运行,因此可以下载之前版本的pycharm,这里选择了2017.3版本的window版本下载并安装到自定义的目录,需要注意的是在安装的过程中,有一项需要勾选,添加到桌面32位安装好之后,双…

    2022年8月25日
    3
  • vue刷新后数据消失_vue数据更新页面不更新

    vue刷新后数据消失_vue数据更新页面不更新vue页面刷新

    2025年6月13日
    0
  • 字符串数组转换为list集合

    字符串数组转换为list集合String[]arr={“a”,”C”,”abc”}; //asList该方法可以直接将一个数组转换为list集合,但是该集合是[只读的],不能对得到的集合进行增删改List<String>asList=Arrays.asList(arr);System.out.println(asList);//结果:[a,C,abc]Listlis…

    2022年6月21日
    27
  • raid 5 raid 10_u盘损坏了还能恢复吗

    raid 5 raid 10_u盘损坏了还能恢复吗介绍:RAID0技术把多块物理硬盘设备(至少两块)通过硬件或软件的方式串联在一起,组成一个大的卷组,并将数据依次写入到各个物理硬盘中。这样一来,在最理想的状态下,硬盘设备的读写性能会提升数倍

    2022年8月3日
    2
  • 风控模型评估方法以及大数据风控模型概念

    风控模型评估方法以及大数据风控模型概念更新一下有效性指标中的区分能力指标:KS(Kolmogorov-Smirnov):KS用于模型风险区分能力进行评估,指标衡量的是好坏样本累计分部之间的差值。好坏样本累计差异越大,KS指标越大,那么模型的风险区分能力越强。KS的计算步骤如下:1.计算每个评分区间的好坏账户数。2.计算每个评分区间的累计好账户数占总好账户数比率(good%)和累计坏账户数占总坏账户数比率(bad%

    2022年6月3日
    37

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号