分页的实现二



controller

 
 
 
@RequestMapping(value = "userSplist", method = RequestMethod.GET)
    public String userSplist(Model model, Integer cp, Integer ps) {
        if (cp == null) {
            cp = 1;
            ps = 5;
        }
        List<Users> list = usersServiceImpl.userSplist(cp, ps);
        int count = usersServiceImpl.getCount();// 总行数
        int allpage = (count - 1) / ps + 1;// 总页码数
        model.addAttribute("list", list);
        model.addAttribute("cp", cp);
        model.addAttribute("ps", ps);
        model.addAttribute("allpage", allpage);
        model.addAttribute("count", count);
        return "listjsp";
    }

接口

 
 
 
/**
     * 分页查询
     * @param cp,当前页码数,如第2页
     * @param ps 每页做多显示的行数 如第2页5行数据
     * @return
     */
    List<Users> userSplist(int cp,int ps);
    
    /**
     * 统计总行数
     * @return
     */
    int getCount();

实现类

 
 
 
public List<Users> userSplist(int cp, int ps) {
        HashMap<String, Integer> map = new HashMap<String, Integer>();
        map.put("start", (cp-1)*ps);
        map.put("ps", ps);
        List<Users> list = super.getSqlSession().selectList("com.yztc.li.pojo.Users.userSplist", map);
        return list;
    }
    public int getCount() {
        return super.getSqlSession().selectOne("com.yztc.li.pojo.Users.count");
    }

JSP

listjsp.jsp

 
 
 
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
 <%
    String path = request.getContextPath();
    String basepath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    <%@taglib  uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<base href="<%=basepath%>">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="js/jquery-1.8.3.js"></script>
<script type="text/javascript">
    $(function() {
        $("tr:even").css("background","red");
        $("tr:odd").css("background","yellow");
        $("#hide").click(function() {
            $("table").hide(3000);
        });
        $("#show").click(function() {
            $("table").show(2000);
        });
    });
</script>
</head>
<body>
<div><button id="show" type="button">显示</button></div>
<div><button id="hide" type="button">隐藏</button></div>
<table cellspacing="0" border="1" width="900">
    <tr>
    <td>用户ID</td>
    <td>登录用户名</td>
    <td>登录密码</td>
    <td>用户姓名</td>
    <td>picpath</td>
    <td>操作</td>
    </tr>
    <c:forEach items="${list }" var="list">
        <tr>
            <td>${list.userid }</td>
            <td>${list.loginname }</td>
            <td>${list.loginpwd }</td>
            <td>${list.username }</td>
            <td>${list.picpath }</td>
            <td>
                <a href="<%=basepath%>uc/userById?userid=${list.userid} ">修改</a>
                <a href="uc/delete?userid=${list.userid} ">删除</a>
            </td>
        </tr>
    </c:forEach>
</table>
<jsp:include page="split.jsp">
    <jsp:param value="uc/userSplist" name="myurl"/>
</jsp:include>
<div><a href="uc/update">修改</a></div>
<div><a href="uc/delete">删除</a></div>
<p><a href="uc/exit">注销</a></p>
</body>
</html>

split.jsp 插件

 
 
 
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%
    String path = request.getContextPath();
    String basepath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort()
            + path + "/";
%>
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<base href="<%=basepath%>">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
function gopage(nowpage) {
    var allpage = parseInt(document.getElementById("allpage").value);
    if (parseInt(nowpage)>=1 && parseInt(nowpage)<=allpage) {
        splitform.cp.value = nowpage;
        splitform.submit();
    }
}
</script>
<style type="text/css">
.crrent_off{
    text-decoration:none;
    margin-left: 5px;
    margin-right: 5px;
}
.crrent_on{
    font-size: 20px;
    color: blue;
    font-weight: red;
    text-decoration:none;
    margin-left: 5px;
    margin-right: 5px;
    
}
.show_page_info span{
    font-weight: bold;
    color: green;
}
</style>
</head>
<body>
    
<form name="splitform" id="splitform" action="${param.myurl }" method="get">
<input type="hidden" value="${cp }" name="cp" id="cp" />
    <input type="hidden" value="${count }" name="count" id="count" />
    <input type="hidden" value="${allpage }" name="allpage" id="allpage" />
    <input type="button" value="首页" <c:if test="${cp==1 }">disabled</c:if> onclick="gopage('1');" />
    <input type="button" value="上一页" ${cp==1?"disabled":"" } onclick="gopage('${cp-1}');" />
    <c:if test="${cp>3 }">
    <a href="javascript:gopage('${cp-3 }');" class="current_off" >...</a>
    </c:if>
    <c:if test="${cp>2 }">
    <a href="javascript:gopage('${cp-2 }');" class="current_off" >${cp-2 }</a>
    </c:if>
    <c:if test="${cp>1 }">
    <a href="javascript:gopage('${cp-1 }');" class="current_off" >${cp-1 }</a>
    </c:if>
    <a href="javascript:void(0);" class="current_on" >${cp }</a>
    <c:if test="${cp<allpage }">
    <a href="javascript:gopage('${cp+1 }');" class="current_off" >${cp+1 }</a>
    </c:if>
    <c:if test="${cp+1<allpage }">
    <a href="javascript:gopage('${cp+2 }');" class="current_off" >${cp+2 }</a>
    </c:if>
    <c:if test="${cp+2<allpage }">
    <a href="javascript:gopage('${cp+3 }');" class="current_off" >...</a>
    </c:if>
    
    <input type="button" value="下一页" ${cp==allpage?"disabled":"" } onclick="gopage('${cp+1}');" />
    <input type="button" value="尾页" ${cp==allpage?"disabled":"" } onclick="gopage('${allpage}');" />
    <div>
    <span class="show_page_info">
        共查询到<span>${count }</span>行数据,
        分为<span>${allpage }</span>,
        现在是第<span>${cp }</span>页,
        每页显示
            <select name="ps" id="ps" onchange="gopage('1');">
                <option value="1" ${ps==1?"selected":"" }>1</option>
                <option value="5" ${ps==5?"selected":"" }>5</option>
                <option value="15" ${ps==15?"selected":"" }>15</option>
                <option value="10" ${ps==10?"selected":"" }>10</option>
                <option value="20" ${ps==20?"selected":"" }>20</option>
            </select>
        
    </span>
    </div>
</form>
</body>
</html>


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值