jstl 页面如何遍历分页

超哥不是大神 2016-05-19 02:08:36


这种分页适合做,我已经用hibernate分页查询放到pagebean里面了。

package com.cc.common.bean;

import java.util.List;
/**
* 分页的bean
*/
public class PageBean<T> {

// 通过hql从数据库分页查询出来的list集合
private List<T> list;
// 总记录数
private int allRows;
// 总页数
private int totalPage;
// 当前页
private int currentPage;

public List getList() {
return list;
}

public void setList(List list) {
this.list = list;
}

public int getAllRows() {
return allRows;
}

public void setAllRows(int allRows) {
this.allRows = allRows;
}

public int getTotalPage() {
return totalPage;
}

public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}

public int getCurrentPage() {
return currentPage;
}

public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
}

/**
* @Name: getTotalPages
* @Description: 得到总页数
* @Author: zwc
* @Version: V1.00
* @Create Date: 2016.3.8
* @Parameters: pageSize 每页记录数
* allRows 总记录数
* @Return: 总页数
*/
public int getTotalPages(int pageSize, int allRows) {
int totalPage = (allRows % pageSize == 0) ? (allRows / pageSize) : (allRows / pageSize) + 1;
return totalPage;
}

/**
* @Name: getCurrentPageOffset
* @Description: 得到当前开始记录号
* @Author: zwc
* @Version: V1.00
* @Create Date: 2016.3.8
* @Parameters: pageSize 每页记录数
* currentPage 当前页
* @Return:无
*/
public int getCurrentPageOffset(int pageSize, int currentPage) {
int offset = pageSize * (currentPage - 1);
return offset;
}

/**
* @Name: getCurPage
* @Description: 得到当前页, 如果为0 则开始第一页,否则为当前页
* @Author: zwc
* @Version: V1.00
* @Create Date: 2016.3.8
* @Parameters: page
* @Return:无
*/
public int getCurPage(int page) {
int currentPage = (page == 0) ? 1 : page;
return currentPage;
}
}


这是那个jsp页面
<ul class="pagination pagination-lg">
<li><a href="/cProductAction_home.action" aria-label="Previous"><i class="fa fa-angle-left"></i></a></li>

<li><a href="#">1</a></li>
<li><a href="#">2</a></li>
<li><a href="#">3</a></li>
<li><a href="#">4</a></li>
<li><a href="#">5</a></li>

<li><a href="/cProductAction_home.action?page=${pageBean.totalPage }" aria-label="Next"><i class="fa fa-angle-right"></i></a></li>
</ul>

求指导,麻烦了各位大神们
...全文
197 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
MamyA 2016-05-20
  • 打赏
  • 举报
回复
jstl直接forEach不行么?
Intboy 2016-05-20
  • 打赏
  • 举报
回复
引用 4 楼 w423462732 的回复:
[quote=引用 2 楼 fengspg 的回复:] <ul class="pagination pagination-lg"> <li><a href="/cProductAction_home.action" aria-label="Previous"><i class="fa fa-angle-left"></i></a></li> <li><a href="/cProductAction_home.action?page=1">1</a></li> <li><a href="/cProductAction_home.action?page=2">2</a></li> <li><a href="/cProductAction_home.action?page=3">3</a></li> <li><a href="/cProductAction_home.action?page=4">4</a></li> <li><a href="/cProductAction_home.action?page=5">5</a></li> <li><a href="/cProductAction_home.action?page=${pageBean.totalPage }" aria-label="Next"><i class="fa fa-angle-right"></i></a></li> </ul>
这样是写死了吧,如果我多几页就不行了吧,我想遍历,就是不知道怎么遍历 [/quote] 你不是有总页数么?根据总页数循环嘛
  • 打赏
  • 举报
回复
引用 8 楼 w423462732 的回复:
[quote=引用 6 楼 qq_33749431 的回复:] 存总条数到域里面,再除去每页显示的条数,就得出页数,一次只能出5个页的导航的话,如果页数大于5那么那个向右的箭头就会亮,如果点击那个向右的箭头那么当前的5个数字加1,但是第五个数字不能超过总页数,一旦超过总页数箭头变暗,向左箭头同理,不知道有没有解决楼主问题
能否贴个代码来看看,我是新手,想学习一下[/quote] 这只能给你思路,公司的代码不能随便传的
jsmSimons 2016-05-20
  • 打赏
  • 举报
回复
这个我没代码,思路告诉你了,你自己按照这个思路硬头皮写一下,不要一开始就看源码,这样的学习效果不好
超哥不是大神 2016-05-19
  • 打赏
  • 举报
回复
引用 6 楼 qq_33749431 的回复:
存总条数到域里面,再除去每页显示的条数,就得出页数,一次只能出5个页的导航的话,如果页数大于5那么那个向右的箭头就会亮,如果点击那个向右的箭头那么当前的5个数字加1,但是第五个数字不能超过总页数,一旦超过总页数箭头变暗,向左箭头同理,不知道有没有解决楼主问题
能否贴个代码来看看,我是新手,想学习一下
超哥不是大神 2016-05-19
  • 打赏
  • 举报
回复
引用 5 楼 sinat_31240689 的回复:
你可以写一个java类,根据你的总条数和页码来控制把分页这个ul拼接起来,我们项目就是这么做的
能不能贴出来给我学习学习,我是新手,谢谢了
jsmSimons 2016-05-19
  • 打赏
  • 举报
回复
存总条数到域里面,再除去每页显示的条数,就得出页数,一次只能出5个页的导航的话,如果页数大于5那么那个向右的箭头就会亮,如果点击那个向右的箭头那么当前的5个数字加1,但是第五个数字不能超过总页数,一旦超过总页数箭头变暗,向左箭头同理,不知道有没有解决楼主问题
  • 打赏
  • 举报
回复
你可以写一个java类,根据你的总条数和页码来控制把分页这个ul拼接起来,我们项目就是这么做的
超哥不是大神 2016-05-19
  • 打赏
  • 举报
回复
引用 2 楼 fengspg 的回复:
<ul class="pagination pagination-lg"> <li><a href="/cProductAction_home.action" aria-label="Previous"><i class="fa fa-angle-left"></i></a></li> <li><a href="/cProductAction_home.action?page=1">1</a></li> <li><a href="/cProductAction_home.action?page=2">2</a></li> <li><a href="/cProductAction_home.action?page=3">3</a></li> <li><a href="/cProductAction_home.action?page=4">4</a></li> <li><a href="/cProductAction_home.action?page=5">5</a></li> <li><a href="/cProductAction_home.action?page=${pageBean.totalPage }" aria-label="Next"><i class="fa fa-angle-right"></i></a></li> </ul>
这样是写死了吧,如果我多几页就不行了吧,我想遍历,就是不知道怎么遍历
超哥不是大神 2016-05-19
  • 打赏
  • 举报
回复
引用 1 楼 u011320740 的回复:
问题是什么?
这样是写死了吧,如果我多几页就不行了吧,我想遍历,就是不知道怎么遍历
Intboy 2016-05-19
  • 打赏
  • 举报
回复
<ul class="pagination pagination-lg"> <li><a href="/cProductAction_home.action" aria-label="Previous"><i class="fa fa-angle-left"></i></a></li> <li><a href="/cProductAction_home.action?page=1">1</a></li> <li><a href="/cProductAction_home.action?page=2">2</a></li> <li><a href="/cProductAction_home.action?page=3">3</a></li> <li><a href="/cProductAction_home.action?page=4">4</a></li> <li><a href="/cProductAction_home.action?page=5">5</a></li> <li><a href="/cProductAction_home.action?page=${pageBean.totalPage }" aria-label="Next"><i class="fa fa-angle-right"></i></a></li> </ul>
菜 头 2016-05-19
  • 打赏
  • 举报
回复
问题是什么?

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧