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)
上一篇 2026年4月15日 上午11:31
下一篇 2026年4月15日 上午11:37


相关推荐

  • 基础版的音频功放电路(A类功放电路、B类功放电路、C类功放电路、D类功放电路、G类功放电路、H类功放电路、K类功放电路、T类功放电路)[通俗易懂]

    基础版的音频功放电路(A类功放电路、B类功放电路、C类功放电路、D类功放电路、G类功放电路、H类功放电路、K类功放电路、T类功放电路)[通俗易懂]  作为硬件工程师,特别是做纯粹模拟电路、应用于音频功放的工程师,对于A类,B类,AB类,D类,G类,H类,T类功放应该特别熟悉。大多数工程师或许只知道其中的一部分、或者知道大概,为了让更多的工程师掌握更加详尽的音频功放知识,下文对以上说的音频功放做详细的说明。  引用地址:http://www.eepw.com.cn/article/201611/340477.htm  功放,顾名思义,就是功率放大的缩写。与电压或者电流放大来说,功放要求获得一定的、不失真的功率,一般在大信号状态下工作,因此,功放电路

    2022年6月2日
    48
  • 禁止计算机更新,彻底禁止win10自动更新方法

    禁止计算机更新,彻底禁止win10自动更新方法现在基本每个小伙伴都用上Windows10的电脑,Windows10每隔一段时间会进行更新补丁,这个时候显得格外烦恼,很多用户都想要关掉,借助一些小工具来实现,但往往会发现,自动更新就像打不死的小强,不管怎么关闭,之后还是会自动更新,让用户非常不爽,win10关闭自动更新已经成为众多用户的难题,所以很多用户来问我怎么才可以把win10永久关闭自动更新,接下来,我就给大家介绍彻底禁止win10自动更…

    2022年5月4日
    82
  • golang coredump分析「建议收藏」

    背景最近在分析golang的一个内存泄漏问题。一般来讲,使用golang自带的pprof工具就可以分析内存的使用,协程情况,是否有block等情况。但是我们项目中调用了C库,导致C库的一些东西没法通过pprof来进行监控分析。实际上通过pprof来监控程序的话,内存是稳定的,但是占用Linux的内存是一直增长的,即RES一直增长,实际上程序是有泄漏的。怀疑是使用C库导致,所以通过coredump…

    2022年4月12日
    252
  • tail 命令详解

    tail 命令详解一、tail命令介绍tail命令可以将文件指定位置到文件结束的内容写到标准输出。如果你不知道tail命令怎样使用,可以在命令行执行命令tail–help就能看到tail命令介绍和详细的参数使用介绍,内容如下(我帮大家翻译了一下)。[root@yanggongzi~]#tail–helpUsage:tail[OPTION]…[FILE]…Printthelast10linesofeachFILEtostandardoutput.Withmore

    2022年6月4日
    44
  • mysql 数据库面试题[通俗易懂]

    mysql 数据库面试题[通俗易懂]mysql 数据库面试题

    2022年4月24日
    46
  • 简述51单片机的内部结构_51单片机的硬件结构及其作用

    简述51单片机的内部结构_51单片机的硬件结构及其作用【1.基本组成】单片机是在一块芯片中集成了CPU、RAM、ROM、定时/计数器和多功能I/O等计算机所需要的基本功能部件的大规模集成电路,又称MCU。51单片机内包含下列几个部件:一个8位CPU一个片内震荡器及时钟电路一个片内4KBROM程序存储器128字节RAM数据存储器可寻址64KB外部数据存储器和64KB外部程序存储空间的控制电路32条可编程的I/O线(4个8位并行I/O端口)两个16位的定时/计数器一个可编程全双工串行口5个中断源、两个优先级嵌套中断结构

    2022年10月4日
    6

发表回复

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

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