`
yinghuayu1324117
  • 浏览: 67357 次
  • 性别: Icon_minigender_2
  • 来自: 保定
文章分类
社区版块
存档分类

实现:首页--上一页--下一页--末页的简单分页实现

阅读更多

实现:首页--上一页--下一页--末页的简单分页实现

代码如下:

Bean中的代码

 

       Dao中的代码

       //获得总的页数

       public int doTotalPage(doPage dopage) {

              int totalPage=0;

              con = ConnectionFactory.getConnection();

              try {

                     ps=con.prepareStatement("select count(*) from news"); 

                     rs=ps.executeQuery();

                     if (rs.next()) {

                       //获得总页数;总页数=上取整(总记录/每页大小)

           //  System.out.println("总记录:"+rs.getInt(1)+"每页大小:"+dopage.getPageSize()+"页数:"+rs.getInt(1)/Double.parseDouble(dopage.getPageSize()+""));

                 totalPage=(int) Math.ceil(rs.getInt(1)/Double.parseDouble(dopage.getPageSize()+""));

                     }

              } catch (SQLException e) {

                            e.printStackTrace();

              } finally {

                     DbClose.close(rs, ps, con);

              }     

              return totalPage;

       }

//查询所有的数据

public doPage doFindAll(doPage dopage) {

ArrayList userlist=new ArrayList();

con= ConnectionFactory.getConnection();

try {

String sql="select * from news limit "+(dopage.getNowPage()-1)*dopage.getPageSize()+"" +

                                   " , "+dopage.getPageSize();

                     ps = con.prepareStatement(sql); 

                     rs = ps.executeQuery();

                     while (rs.next()) {

                            //封装user对象

                 News new1=new News();

                      new1.setNid(rs.getInt("nid"));

                      new1.setNews(rs.getString("news"));

                      new1.setClasses(rs.getString("classes"));

                      new1.setDims(rs.getString("dims"));

                         //向数据集合中添加元素

                      userlist.add(new1);

                     }

                     //将查询的结果封装到doPage

                     dopage.setList(userlist);

              } catch (SQLException e) {

                     // TODO Auto-generated catch block

                     e.printStackTrace();

              } finally {

                     DbClose.close(rs, ps, con);

              }

              return dopage;

       }

 

 

 

Servlet中的代码

// 查询所有的数据,并分页显示

              if (biaoshi.equals("list")) {

                     InsertNews it = new InsertNews();

                     // 封装分页查询的参数的对象doPage

                     doPage dopage = new doPage();

                     dopage.setNowPage(Integer.parseInt(pageNo));

                     dopage.setPageSize(4);

                     // 执行查询操作,参数是doPage

                     dopage = it.doFindAll(dopage);

                     // 得到总的页数

              dopage.setTotalPage(it.doTotalPage(dopage));

                     // 将返回的结果,放到request中到jsp中显示

              request.setAttribute("doPage", dopage);

                     // 页面跳转

              this.gotoPage("Comlist.jsp", request, response);

              }

       }

       // 跳转页面方法

       private void gotoPage(String URL, HttpServletRequest request,

                     HttpServletResponse response) throws ServletException, IOException {

              RequestDispatcher rd;

              rd = request.getRequestDispatcher(URL);

              rd.forward(request, response);

       }

       public void init() throws ServletException {

       }

 

 

Jsp中的代码

<DIV class=Extra>

       <a href="InfoComManage?biaoshi=list&page=1">首页</a>

       <%if (dopage.getNowPage() - 1 > 0) {%>

<SPAN class=Unable> 

<a  href="InfoComManage?biaoshi=list&page=<%=(dopage.getNowPage() - 1)%>">上一页

</a> 

</SPAN>

<%}

if (dopage.getNowPage() + 1 <= dopage.getTotalPage()) {

%>

<a href="InfoComManage?biaoshi=list&page=<%=(dopage.getNowPage() + 1)%>">下一页</a>

<%}%>

<a href="InfoComManage?biaoshi=list&page=<%=dopage.getTotalPage()%>">末页

</a>

</DIV>


 

 

 

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics