jsp中的分页

求一个JSP的分页代码,通俗易懂的。... 求一个JSP的分页代码,通俗易懂的。 展开
 我来答
liuzhh110
推荐于2016-02-11 · TA获得超过306个赞
知道小有建树答主
回答量:103
采纳率:0%
帮助的人:95.3万
展开全部
分页有两种:真分页和假分页 (楼上的所说的方法是真分页)
区别:假分页要把所有数据先提取出来放到一个list集合里
真分页则是需要用到几行数据再从数据库中提取出来放把需要显示的数据放到list集合里
给你个例题,如果看不懂的话再详细给你说吧!
这是一个人员信息假分页的简单例题,里面有比较详细的注释:
<head>
</head>
<%
List list = session.getAttribute("list") != null ? (List) session.getAttribute("list") : new ArrayList();

/*当前页数 由自己进行提交的,默认值为1*/
int nowPage = request.getParameter("page") != null ? Integer.parseInt(request.getParameter("page")) : 1;

/*每页显示的条数*/
int pageSize = 5;

/*总共多少条*/
int maxCount = list.size();

/*总共多少页*/
/*如果总页数余上当前页数大于0,说明无法整除,所以在进行除法运算后加1页。否则,可以整除,直接进行除法运算操作*/
int maxPageCount = maxCount % pageSize > 0 ? (maxCount / pageSize) + 1 : maxCount / pageSize;
%>

<body>
<table border="1" width="100%">
<tr>
<td>ID</td>
<td>编号</td>
<td>时间</td>
<td>人员</td>
</tr>
<%
/*推算起始点:因为与每页的当前页数和每页多少条有关,所以,起始点是由这两个值推算得来
因为默认值是1,如果以1与每页多少条的积做为起始点,与事实不附,
因此考虑使用当前页数减1与每页的条数的积做为起始点
*/
/*推算结束点:可以直接用当前页数和每页的条数做为结束点
如果不合适,考虑是不是得到的积大于最大的记录数了,如果大于了,就用最大的记录数做为结束点。
否则,延用刚才的结论*/
for(int i = (nowPage - 1) * pageSize ; i < ((nowPage * pageSize) > maxCount ? maxCount : (nowPage * pageSize)) ; i++){
Orders orders = (Orders) list.get(i);
%>
<tr>
<td><%=orders.getId() %></td>
<td><%=orders.getCode() %></td>
<td><%=orders.getUsedate() %></td>
<td><%=orders.getUsername() %></td>
</tr>
<%
}
%>
</table>
<a href="list.jsp?page=1">首页</a>
<a href="list.jsp?page=<%=nowPage - 1 < 1 ? 1 : nowPage - 1%>">上一页</a>
<a href="list.jsp?page=<%=nowPage + 1 > maxPageCount ? maxPageCount : nowPage + 1%>">下一页</a>
<a href="list.jsp?page=<%=maxPageCount %>">尾页</a>
当前第<%=nowPage %>页,总共<%=maxPageCount %>页
</body>
67918334
2010-02-09 · TA获得超过726个赞
知道小有建树答主
回答量:839
采纳率:0%
帮助的人:610万
展开全部
<%int mrpage=50; //默认显示条数
int pages=request.getParameter("pages"); //返回的页数
int uppage=pages-1; //上一页
int nextpage=pages+1;//下一页
//然后就是你的SQL了
//String sql="select top "+mrpage+" id,name from table where id not in(select top "+mrpage*pages+" id from table order by id desc) order by id desc";
%>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式