• 每日博客


    在界面完成分页控制
    在界面完成分页控制,也就是在循环显示的时候进行控制。前面介绍的显示信息的代
    码是通过<c:forEach>控制的,所以需要在<c:forEach>中添加代码,只显示满足条件的记录。
    <c:forEach>标签提供了两个属性 begin 和 end,可以控制集合中的记录从什么地方开始显示
    以及显示到什么地方结束。
    另外在分页控制的时候需要得到总的页数,而总的页数是由总的记录数决定的,所以
    需要在 UserBean 中添加一个方法。
    要在界面上完成分页控制,需要完成下面的修改:
    (1) 修改 UserBean,添加一个获取总页数的方法;
    (2) 修改 FindAllUserServlet,添加调用获取总页数的方法的代码以及传递总页数的
    代码;
    (3) 修改 userlist.jsp,添加页码控制的代码(上一页、下一页、最后一页和第一页等的控
    制代码),以及控制信息显示的代码。
    下面分别进行介绍。
    8.2.1 修改 UserBean.java
    在 UserBean 中添加一个方法,该方法用于获取记录数。得到数据库中记录数的过程与
    查询所有用户信息的过程是相同的,只是 SQL 语句不同,最后得到的结果集不同。
    SQL 语句是:
    select count(*) from usertable
    结果集只有一行一列,所以遍历和取值比较简单。只要将指针指向第一行,然后取出
    第一列内容即可,代码如下:
    rs.next();
    int n = rs.getInt(1);
    注意:虽然只有一条记录,但仍然需要使用 next 方法,因为得到结果集的时候指针指
    向第一条记录的前面。
    然后根据记录数计算页数,假设每页显示 10 条记录,则页数为:
    pageCount = (n-1)/10+1;
    获取总页数的方法如下:
    public Integer getPageCount()
    {
    int pageCount=1; 
    // 连接对象
    Connection con=null;
    // 语句对象
    Statement stmt=null;
    // 结果集对象
    ResultSet rs=null;
    // 查询语句
    String sql="select count(*) from usertable";
    try
    {
    // 创建上下文环境
    Context initContext = new InitialContext();
    // 查找数据源
    Context envContext = (Context)initContext.lookup("java:/comp/env");
    DataSource ds = (DataSource)envContext.lookup("jdbc/TestDB");
    // 从连接池中获取连接
    con = ds.getConnection();
    // 创建语句对象
    stmt=con.createStatement();
    // 执行 select 语句,返回结果集对象
    rs=stmt.executeQuery(sql);
    // 指向结果集的第一条
    rs.next();
    // 得到第一列
    int n = rs.getInt(1);
    // 计算总页数
    pageCount = (n-1)/10+1;
    }catch(Exception e)
    {
    }
    finally
    {
    // 关闭对象的顺序:rs stmt con
    // 与创建对象的顺序相反
    try{ rs.close(); }catch(Exception e){}
    try{ stmt.close(); }catch(Exception e){}
    try{ con.close(); }catch(Exception e){}
    }
    // 返回计算的结果
    return new Integer(pageCount);
    }
  • 相关阅读:
    xUtils
    android各类开发框架汇总
    The connection to adb is down, and a severe error has occured.问题解决
    android系统自带主题和自定义主题
    gson处理json和java对象互转
    android解析json数据
    andrid源码目录分析
    JavaScript学习笔记(1)字符串方法
    0day学习笔记(3)Windows定位API引起的惨案(原理)
    内存分页
  • 原文地址:https://www.cnblogs.com/ruangongwangxiansheng/p/14162006.html
Copyright © 2020-2023  润新知