博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
struts2实现最简单的分页技术
阅读量:6813 次
发布时间:2019-06-26

本文共 4115 字,大约阅读时间需要 13 分钟。

struts2实现分页技术:

在对MemberUser类(表)中的数据进行分页:

 1.在MemberUserDaoImpl 中添加 获取数据库中表的总数量的方法:

public int counterByPage() {		// TODO Auto-generated method stub		sql="select count(*) from memberuser";				ResultSet rs =util.Query(sql);		int totalCount=0;				try {			while(rs.next())			{				totalCount = rs.getInt(1);			}								} catch (SQLException e) {			// TODO Auto-generated catch block			e.printStackTrace();		}		return totalCount;	}

2.在MemberUserDaoImpl中添加 获取当前页的数据集合的方法:

public List
queryMemberUserInfoByPage(int pageNow,int limitPage) { // TODO Auto-generated method stub sql="SELECT * FROM (SELECT A.*, ROWNUM RN FROM (select M.MEMBERID,M.MEMBERNAME,M.AGE,M.GENDER,M.BIRTHDAY,M.MEMBER_LABEL,M.MEMBER_INTRODUCTION,M.MEMBER_PICTURE,M.MEMBER_INTEGRAL,M.REGISTER_DATE,P.ROLENAME,M.ACCOUNTNUMBER,M.PWD,M.MEMBEREMAIL from memberuser m,person_role p where m.roleid=p.roleid order by m.memberid Asc) A WHERE ROWNUM <=?)WHERE RN >?"; List
memberList = new ArrayList
(); ResultSet rs = util.Query(sql,limitPage*pageNow,(pageNow-1)*limitPage); try { while(rs.next()) { MemberUserRole mUserRole = new MemberUserRole(rs.getInt("MEMBERID"),rs.getString("memberName"),rs.getInt("age"),rs.getString("gender"),rs.getDate("birthday"),rs.getString("MEMBER_LABEL"),rs.getString("MEMBER_INTRODUCTION"),rs.getString("MEMBER_PICTURE"),rs.getDate("REGISTER_DATE"),rs.getString("roleName"),rs.getString("pwd"),rs.getInt("MEMBER_INTEGRAL"),rs.getString("ACCOUNTNUMBER"),rs.getString("MEMBEREMAIL")); memberList.add(mUserRole); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { util.close(); } return memberList; }

在Acction中:

public class PageAction extends BaseAction {	/**	 * 	 */	private static final long serialVersionUID = 1L;		/**	 * 总记录数	 */	private int totalRecord;	/**	 * 每页显示条数	 */	private int limitPage=5;		/**	 * 当前页	 */	private int nowPage=1;		/**	 * 总页数	 */	private int totalPage;		public int getTotalRecord() {		return totalRecord;	}	public void setTotalRecord(int totalRecord) {		this.totalRecord = totalRecord;	}	public int getLimitPage() {		return limitPage;	}	public void setLimitPage(int limitPage) {		this.limitPage = limitPage;	}	public int getNowPage() {		return nowPage;	}	public void setNowPage(int nowPage) {		this.nowPage = nowPage;	}	public int getTotalPage() {		return totalPage;	}	public void setTotalPage(int totalPage) {		this.totalPage = totalPage;	}			MemberUserBiz memberUserBiz = new MemberUserBizImpl();	/**	 * @return	 * 获取某页用户信息的记录	 */	public String queryMemberUserInfoByPage()	{		List
memberListByPage = new ArrayList
(); //获取总记录数 totalRecord= memberUserBiz.counterByPage(); //获取总页数 totalPage =(totalRecord+limitPage-1)/limitPage; //当前页处理 if(nowPage<1) { nowPage=1; }else if(nowPage>=totalPage) { nowPage=totalPage; } //获得某页的记录 memberListByPage = memberUserBiz.queryMemberUserInfoByPage(nowPage, limitPage); app.setAttribute("memberListByPage", memberListByPage); int a=0; req.setAttribute("a", a); return "queryMemberUserInfoByPage"; }}

在jsp页面:

序号 账号 用户名 年龄 性别 生日 积分 角色 邮箱 操作
${status.index+1}
查看 | 删除 | 更新
条记录 共 ${totalPage} 页 第
首页
上一页
下一页
尾页
以上就是比较完整的代码了

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://www.cnblogs.com/lovelyx/p/4867117.html

你可能感兴趣的文章
图片base64编码显示 - suflow - ITeye技术网站
查看>>
ArcGIS 服务对象扩展(SOE)新手自学笔记(2):REST SOE模板上
查看>>
gvim 2012,8,30号 配置
查看>>
Struts2----><s:token />标签防止重复提交
查看>>
mapreduce (一) 物理图解+逻辑图解
查看>>
自动化测试 Windows 8 应用
查看>>
[译]Array.prototype.concat不是通用方法
查看>>
DropDownList 发现
查看>>
SQL SERVER 2000数据库置疑处理
查看>>
Android系统中的广播(Broadcast)机制简要介绍和学习计划
查看>>
A Theoretical Analysis of Feature Pooling in Visual Recognition
查看>>
【转】耐心看
查看>>
hdu 1272 小希的迷宫
查看>>
原创教程:SpagoBI4.2汉化及配置Mysql数据库教程
查看>>
大写中文数字-財务
查看>>
用Easing函数实现碰撞效果
查看>>
vc++基础班[23]---文件夹的基本操作
查看>>
关于gnome
查看>>
LSPCI具体解释分析
查看>>
【AngularJS】—— 3 我的第一个AngularJS小程序
查看>>