Web查询分页功能实现
在Web上的实现分页功能是一个客户端与服务器端交互的过程,主要是实现:
1. 首页
2. 上一页
3. 下一页
4. 末页
5. 显示当前页/总页数
6. 显示所有数据项数
这6个功能,功能的实现并不复杂,如果能够知道当前需要获取哪一页的数据,实现起来还是比较简单的。因此,在服务器端需要保存的变量信息有:
1. 当前所在页,curPage
2. 每一页显示数据项数,itemPerPage
3. 总共有多少景数据,totalItem
4. 一共多少页,totalPage
实现过程分析:
1. 利用Select Count(*) from [table_name] where [where_clause]; 获取到totalItem
2. itemPerPage是一个用户选择的值,可以从页面传回,此时itemPerPage应该是一个已知量。利用totalItem/itemPerPage可以得到totalPage
3. 服务器端的curPage在第一次访问时被初化为0,此后点击首页时,curPage=1,点击上一页时,curPage=curPage-1,需要判断是否到达首页,点击下一页时,curPage=curPage+1,需要判断是否到达末页,点击末页时,curPage = totalPage。
4. 利用SQL语句实现指定范围内的项的查询。在Oracle中可以利用rownum结合子查询来实现,注意rownum不支持“>”的查询。对于其他的数据库可以利用Select TOP(N)来实现,具体实现网上有不少示例,可以Google之。