日期:2014-05-20  浏览次数:20583 次

高手指点!分页问题,急!!!
数据库的一个表有若干条数据,要求在jsp上分页显示,请高手们,大虾们,跟我好好讲哈原理,给点代码提示,数据库的查询我已经查好了!

------解决方案--------------------
SQL语句里有个查询结果显示第几行到第几行的方法..分页就是每次显示多少行.把第几页转成已显示了第几行和下一页需要几行.这两个数据加入到SQL语言.查询.结果显示到页面上.
------解决方案--------------------
本菜鸟刚学了分页,分页的原理就是用户在浏览器上点击哪一页的链接就把哪一页对应的数据从数据库取出来然后显示给用户看。具体实现起来也不是太难,需要事先规定每页显示多少条数据,获取总共有多少条数据,计算出总页数,然后根据这些数据生成分页链接。每个链接后都加上代表这页的参数。服务器端就可以根据这个参数来确定用户是想看哪一页的数据了
其中用到的一句很重的sql语句:
select column1,column2... from tableName limit x,y
就是从表中的第x-1行开始取y条记录出来
不知道这么说对你有没有帮助,呵呵
------解决方案--------------------
从数据库里把数据取出来放到list集合里
Java code
int curPage=Integer.parseInt(request.getParameter("curPage")==null?"1":request.getParameter("curPage"));//当前页
                int perPage=5;//每页个数
        int totalPage;//总页数
        if(list.size()%perPage==0){
            totalPage=list.size()/perPage;
        }else{
            totalPage=list.size()/perPage+1;
        }
        if(curPage<1){
            curPage=1;
        }
        if(curPage>totalPage){
            curPage=totalPage;
        }
        if(curPage<1){
            curPage=1;
        }
        int startIndex=(curPage-1)*perPage;
        int endIndex=startIndex+perPage;
        if(endIndex>list.size()){
            endIndex=list.size();
        }
                request.setAttribute("curPage", curPage);
        request.setAttribute("totalPage", totalPage);
                list=list.subList(startIndex, endIndex);