zoukankan      html  css  js  c++  java
  • JSP---分页

    1、建立java类

    public class StudentManage {
     int pageSize = 3;//每页记录数

    //获取记录总数
    private int getTotalNum(String strWhere) throws SQLException {
    DbAccess dbAccess = new DbAccess();
    int total = 0;
    String sql = "select count(*) from student where 1=1 and " + strWhere;
    dbAccess.excuteQuery(sql);
    ResultSet rs = dbAccess.getRs();
    if (rs.next()) {
     total = rs.getInt(1);
    }
    dbAccess.close();
    return total;
    }

    //获取总页数(即最大的页号)
    public int getMaxPageNo(String strWhere) throws SQLException {
    int maxPageNo;
    if(getTotalNum(strWhere)%pageSize==0)
     maxPageNo=getTotalNum(strWhere)/pageSize;
    else {
     maxPageNo=getTotalNum(strWhere)/pageSize+1;
    }
    return maxPageNo;
    }

    // 获取指定页的记录
    public List<Student> StudList(String strWhere, int page)
    throws SQLException {
    DbAccess dbAccess = new DbAccess();
    List<Student> list = new ArrayList<Student>();
    int total=getTotalNum(strWhere);
    String sql = "select * from student where 1=1 and " + strWhere;
    dbAccess.excuteQuery(sql);
    ResultSet rs = dbAccess.getRs();
    int t = (page - 1) * pageSize + 1;//当前页的首记录号
    if (t <= total) {
     rs.absolute(t);//需要修改DAL层 st = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
     do {
      Student student = new Student();
      student.setStud_id(rs.getString("stud_id"));
      student.setStud_name(rs.getString("stud_name"));
      student.setStud_sex(rs.getString("stud_sex"));
      student.setStud_class(rs.getString("stud_class"));
      student.setStud_fav(rs.getString("stud_fav"));
      list.add(student);
      } while (rs.next() && list.size() < pageSize);
     rs.close();
     }
     dbAccess.close();
     return list;
    }

    2、jsp页面调用

    <%
    String curPage = request.getParameter("curPage");
    if (curPage == null || curPage == "") {
     curPage = "1";
    }
    int cp = Integer.parseInt(curPage);
    StudentManage studentManage = new StudentManage();
    int lastPage = studentManage.getMaxPageNo("1=1");
    List<Student> list = studentManage.StudList("1=1", cp);
    %>

    当前第<%=cp%>/<%=lastPage%>页

    <%
    if (cp > 1) {
    %>
    <a href="?curPage=1">第一页</a>&nbsp;
    <a href="?curPage=<%=cp - 1%>">上一页</a>
    <%
    }
    %>
    <%
    if (cp < lastPage) {
    %>
    <a href="?curPage=<%=cp + 1%>">下一页</a>&nbsp;
    <a href="?curPage=<%=lastPage%>">最后一页</a>
    <%
    }
    %>

  • 相关阅读:
    mysql sql语句多表合并UNION ALL和UNION
    ajax向后台传递数组参数并将后台响应的数据赋值给一个变量供其它插件使用
    java web项目中后台控制层对参数进行自定义验证 类 Pattern
    java后台实体类设置默认值
    app连接线上数据库进行本地接口测试
    idea常用快捷键
    百度搜索小脚本
    有道翻译小脚本
    洛谷 P3275 [SCOI2011]糖果
    洛谷 P2048 BZOJ 2006 [NOI2010]超级钢琴
  • 原文地址:https://www.cnblogs.com/beast-king/p/3851346.html
Copyright © 2011-2022 走看看