JSTL结合Mybatis的PageHelper完成页面分页的数值显示(前五后四的显示效果)

由于规定了用jsp技术和Mybatis,并要求实现分页页码的效果显示为前五后四(如下图,但当前页前有5页,后有4页,与百度搜索的分页效果一致)

代码如下:(代码可以直接粘贴使用,只要你的PageHelper插件的PageInfo返回的也是pageInfo这个变量名)

其中要注意的是JSTL的那些标签的嵌套使用要小心,就是在<c:when>标签里再次嵌套时,一定要加上<c:choose>标签

//实现前五后四的效果,这个很好理解,自己画个图按着步骤走就知道了
                            <c:choose>
                                <c:when test="${pageInfo.pages >= 10}">
                                    <c:choose>
                                        <c:when test="${pageInfo.pageNum > pageInfo.pages - 4}">
                                            <c:set var="begin" value="${pageInfo.pages-9}"/>
                                            <c:set var="end" value="${pageInfo.pages}"/>
                                        </c:when>
                                        <c:when test="${pageInfo.pageNum < 5}">
                                            <c:set var="begin" value="1"/>
                                            <c:set var="end" value="10"/>
                                        </c:when>
                                        <c:otherwise>
                                            <c:set var="begin" value="${pageInfo.pageNum - 5}"/>
                                            <c:set var="end" value="${pageInfo.pageNum + 4}"/>
                                        </c:otherwise>
                                    </c:choose>
                                </c:when>
                                <c:otherwise>
                                    <c:set var="begin" value="1"/>
                                    <c:set var="end" value="${pageInfo.pages}"/>
                                </c:otherwise>
                            </c:choose>

//遍历结果
                            <c:forEach begin="${begin}" end="${end}" var="curPage">
                                <c:choose>
                                    <c:when test="${pageInfo.pageNum == curPage}">
                                        <li class="active"><a href="${pageContext.request.contextPath}/permission/findAllPermission.do?page=${curPage}&pageSize=${pageInfo.pageSize}">${curPage}</a></li>
                                    </c:when>
                                    <c:otherwise>
                                        <li><a href="${pageContext.request.contextPath}/permission/findAllPermission.do?page=${curPage}&pageSize=${pageInfo.pageSize}">${curPage}</a></li>
                                    </c:otherwise>
                                </c:choose>
                            </c:forEach>

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值