web商城——分页和选择查询

    xiaoxiao2023-10-24  147

    **分页:主要就是封装一个大的分页数据类 PageBean 传入前台

    public class PageBean<T> { private int currentPage; //当前页(浏览器传递) private int currentCount; //当前页显示的个数 (固定值) private int totalCount; //总记录数,数据库查询 private int totalPage; //总分页数 private int startIndex; //开始索引 private List<Product> productlist = new ArrayList<Product>(); //分页数据,数据库查询

    通过前台传入 当前页currentPage, 通过后台 数据库查询 获得总记录数totalCount,即商品总数。 通过计算currentPage,currentCount,totalCount 来获得总分页数totalPage, 由数据库查询获得 productlist分页数据

    //获得分页的商品数据 public List<Product> findProductListForPagebean(int currentPage, int currentCount) throws SQLException { QueryRunner qr = new QueryRunner(DataSourceUtils.getDataSource()); //分页查询,limit 开始索引,每页显示个数(开始索引---> (当前页数-1)*每页显示个数) int index = (currentPage - 1) * currentCount; String sql = "select * from product limit ?,?"; return qr.query(sql, new BeanListHandler<Product>(Product.class), index, currentCount); } public static PageBean findPageBean(int currentPage, int currentCount) throws SQLException { //目的就是封装一个pagebean 并返回 PageBean<Product> pageBean = new PageBean(); /* private int currentPage; //当前页(浏览器传递) private int currentCount; //每页显示的个数 (固定值) private int totalCount; //总记录数,数据库查询 private int totalPage; //总分页数 private int startIndex; //开始索引 private List<T> productList = new ArrayList<T>(); //分页数据,数据库查 */ QueryProduct dao = new QueryProduct(); //private int currentPage; //当前页(浏览器传递) pageBean.setCurrentPage(currentPage); //每页显示的个数 (固定值) pageBean.setCurrentCount(currentCount); //总记录数 int totalCount = dao.getProductTotalCount(); /* private int totalPage; //总分页数 * 总页数 = Math.ceil(总条数/当前显示的条数) */ // pageBean.setTotalPage(totalPage); //总分页数 int totalPage = (int) Math.ceil(1.0 * totalCount / currentCount); pageBean.setTotalPage(totalPage); //private List<T> productList = new ArrayList<T>(); //分页数据,数据库查 List<Product> productlist = dao.findProductListForPagebean(currentPage, currentCount); System.out.println(productlist.size()); pageBean.setProductlist(productlist); System.out.println(pageBean.getProductlist().size()); return pageBean; }
    最新回复(0)