sql = "SELECT COUNT(*) FROM TBL_BOOK"; try { PreparedStatement ps = super.getConn().prepareStatement(sql); ResultSet rs = ps.executeQuery(); if (rs.next()) { this.countRow = rs.getInt(1); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } }
/** * 得到当前页数 * @return */ public int getCurrentlyPage() { return currentlyPage; } /** * 设置当前页数 * @param currentlyPage */ public void setCurrentlyPage(int currentlyPage) { this.currentlyPage = currentlyPage; } /** * 分页查询 * @param page 当前页数 * @return */ public List
myBookPaginQuery(int page){ List bookList = new ArrayList(); int num = (page-1) * this.PAGEROW; //要被排除的行数 String sql = "SELECT top("+this.PAGEROW+") * FROM TBL_BOOK WHERE book_id NOT IN (SELECT TOP("+num+") book_id FROM TBL_BOOK)"; try { PreparedStatement ps = super.getConn().prepareStatement(sql);//预编译 SQL 指令并把预编译好的 SQL 存储在 PreparedStatement 对象中 ResultSet rs = ps.executeQuery(); //执行预编译好的 SQL 指令,并 把获得的查询结果集存储在 ResultSet 对象中 while (rs.next()) {//通过 while 循环迭代出结果集中的所有数据,并把 它们存储在 List 集合中 Book book = new Book(); book.setBook_id(rs.getInt("book_id")); book.setBook_name(rs.getString("book_name")); book.setBook_num(rs.getString("book_num")); book.setBook_author(rs.getString("book_author")); book.setBook_price(rs.getDouble("book_price")); book.setBook_synopsis(rs.getString("book_synopsis")); book.setBook_publishTime(rs.getString("book_publishTime"));
bookList.add(book); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } return bookList; } }
4. JSP 页面代码: 页面代码:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> xml:namespace prefix = jsp /> > --> <% request.setCharacterEncoding("UTF-8"); //设置编码集 String strPageNum = request.getParameter("pageNum"); //获得当前 页数的字符串 int pageNum = 1; //把当前页数的字符串转化为数字,如果转化失败,则设置当前页数为 1 ,即首页 try{ pageNum = Integer.parseInt(strPageNum); } catch (Exception e){ pageNum = 1; }
BookPaginQuery bookPaginQuery = new BookPaginQuery();//实例化 BookPaginQuery 类,得到 bookPaginQuery 对象 bookPaginQuery.setCountRow(); //设置总行数 bookPaginQuery.setCountPage(); //设置总页数 int countPage = bookPaginQuery.getCountPage(); //获得总页数 //如果当前页数小于 0 或大于总页数,则把当前页重新设为 1 if (pageNum<=0 || pageNum>countPage){ pageNum = 1; } bookPaginQuery.setCurrentlyPage(pageNum); //设置当前页 int currentlyPage = bookPaginQuery.getCurrentlyPage(); //获得当 前页 List bookList = bookPaginQuery.myBookPaginQuery(pageNum); //分页查询 if(bookList!=null &;&; bookList.size()>0) { %> 图书名称 | 图书编号 | 作者 | 价格 | 图书简介 | 出版日期 |
<% for
-
相关文章
-
最新文件