如何使用Java实现分页功能
发表于:2025-02-16 作者:千家信息网编辑
千家信息网最后更新 2025年02月16日,这篇文章将为大家详细讲解有关如何使用Java实现分页功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在项目中,分页是一个项目中必不可少的,它可以防止我们从数据库中
千家信息网最后更新 2025年02月16日如何使用Java实现分页功能
这篇文章将为大家详细讲解有关如何使用Java实现分页功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
在项目中,分页是一个项目中必不可少的,它可以防止我们从数据库中进行大量数据查询时速度变慢,提高我们的查询效率。
1、定义分页模型:PageModel
package com.common.page; import java.util.List; /** * 封装分页信息 * @author Administrator * */ public class PageModel{ //结果集 private List list; //查询记录数 private int totalRecords; //每页多少条数据 private int pageSize; //第几页 private int pageNo; /** * 总页数 * @return */ public int getTotalPages() { return (totalRecords + pageSize - 1) / pageSize; } /** * 取得首页 * @return */ public int getTopPageNo() { return 1; } /** * 上一页 * @return */ public int getPreviousPageNo() { if (pageNo <= 1) { return 1; } return pageNo - 1; } /** * 下一页 * @return */ public int getNextPageNo() { if (pageNo >= getBottomPageNo()) { return getBottomPageNo(); } return pageNo + 1; } /** * 取得尾页 * @return */ public int getBottomPageNo() { return getTotalPages(); } public List getList() { return list; } public void setList(List list) { this.list = list; } public int getTotalRecords() { return totalRecords; } public void setTotalRecords(int totalRecords) { this.totalRecords = totalRecords; } public int getPageSize() { return pageSize; } public void setPageSize(int pageSize) { this.pageSize = pageSize; } public int getPageNo() { return pageNo; } public void setPageNo(int pageNo) { this.pageNo = pageNo; } }
2、分页测试:在MySQL中建立admin表,里面有字段id、name、password
3、简历Admin的实体bean类:
package com.common.page; public class Admin { private int id; private String name; private String password; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
4、测试调用:
package com.common.page; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import com.common.db.DbUtil; public class Client { public static PageModel findAdmins(int pageNo,int pageSize){ Connection conn=DbUtil.getConnection(); String sql="select * from admin limit ?,?"; PageModel pageModel=null; PreparedStatement pstm=null; ResultSet rs=null; Admin admin=null; Listlist=new ArrayList (); try { pstm=conn.prepareStatement(sql); pstm.setInt(1, (pageNo-1)*pageSize); pstm.setInt(2, pageNo*pageSize); rs=pstm.executeQuery();; while(rs.next()){ admin=new Admin(); admin.setId(rs.getInt("a_id")); admin.setName(rs.getString("a_name")); admin.setPassword(rs.getString("a_pwd")); list.add(admin); } ResultSet rs2=pstm.executeQuery("select count(*) from admin"); int total=0; if(rs2.next()){ total=rs2.getInt(1); } pageModel=new PageModel(); pageModel.setPageNo(pageNo); pageModel.setPageSize(pageSize); pageModel.setTotalRecords(total); pageModel.setList(list); } catch (SQLException e) { e.printStackTrace(); }finally{ DbUtil.close(conn); DbUtil.close(pstm); DbUtil.close(rs); } return pageModel; } public static void main(String[] args) { PageModel pageModel=Client.findAdmins(2,4); List list=pageModel.getList(); for(Admin a:list){ System.out.print("ID:"+a.getId()+",用户名:"+a.getName()+",密码:"+a.getPassword()); System.out.println(); } System.out.print("当前页:"+pageModel.getPageNo()+" "); System.out.print("共"+pageModel.getTotalPages()+"页 "); System.out.print("首页:"+pageModel.getTopPageNo()+" "); System.out.print("上一页:"+pageModel.getPreviousPageNo()+" "); System.out.print("下一页:"+pageModel.getNextPageNo()+" "); System.out.print("尾页:"+pageModel.getBottomPageNo()+" "); System.out.print("共"+pageModel.getTotalRecords()+"条记录"); System.out.println(); } }
这样分页效果就实现了,我们要实现分页效果,只要传入相应的参数和相应的数据库执行语句即可实现,希望大家能灵活运用。
关于"如何使用Java实现分页功能"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
数据
篇文章
查询
功能
效果
数据库
更多
项目
上一
首页
测试
不错
实用
信息
内容
参数
字段
实体
密码
必不可少
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
江苏互联网络技术服务客户至上
融媒体平台数据软件开发
网络边缘网络技术能力
hyipxel服务器地址
mysql数据库的字符集
高安全云服务器诚信为本
二个数据库之间怎么同步
彩六异种连接服务器失败
网络安全物理威胁有哪些
计算机网络技术专业认知文本
银行软件开发人员工作待遇
涉密信息网络安全技术
深圳芯片软件开发
文明上网网络安全手抄报小学生
进销存管理软件开发说明
指纹保存到数据库中
淮南软件开发定制公司
数控机床nc软件开发
庆阳市数据库
网络安全内容有哪些内容
statdx影像数据库
普陀区个性化网络技术诚信服务
金融服务器的主要作用
vb.net数据库实例
计算机网络技术怎么称呼
对数据库的四大操作
大石租房网络安全
怎样能做游戏服务器的管理
es浏览器服务器
中小学教师网络安全