JavaWeb知识 - 分页
2015-10-13 19:41
453 查看
一、什么是分页?
第N页/共M页 首页 上一页 1 2 3 4 5 6 7 8 9 10 下一页 尾页 口go分页的优点:只查询一页,不用查询所有页。
二、分页数据
页面的数据都是由Servlet来传递的。当前页:pageCode,如果页面没有传递当前页码,那么Servlet默认是第一页,或者按页面传递的为准;
总页数:totalPages,总记录数 / 每页记录数;
总记录数:totalRecored,DAO层来获取,SELECT COUNT(*) FROM t_customer;
每页记录数:业务数据或系统数据;
当前页数据:beanList;
url
三、分页Bean的数据
这些分页数据总要在各层之间来回传递!我们把这些分页数据封装到一个JavaBean中,它就叫分页Bean,例如PageBean.java:
public class PageBean<T> { private int pc;// 当前页码page code //private int tp;// 总页数total page private int tr;// 总记录数total record private int ps;// 每页记录数page size private List<T> beanList;// 当前页的记录 …… } |
四、分页在各层中的处理
页面:给出分页相关的链接,页面需要给Servlet传递pageCode;Servlet:创建PageBean对象,给PageBean所有属性赋值,然后传递给页面;
Service:略;
Dao:tatolRecored,SELECT COUNT(*) FROM t_customer;beanList,SELECT * FROM t_customer LIMIT x , y。
五、显示分页页码列表
确定数据:最大显示页码:10页;
当前页,在列表中的位置:6
推算数据:
begin:pageCode-5;
end:pageCode+4;
计算公式:
如果总页数<=10(列表长度),那么begin=1,end=总页数;
使用公式计算,begin=pc-5,end=pc+4;
头溢出:当begin<1时,让begin=1;
尾溢出:当end>${tp}时,让end=${tp};
六、在超链接黄总保存数据
当使用多条件查询后,然后在点击第2页时,这个第2页超链接就没有条件了,所以会丢失条件,所以我们需要在页面上的所有连接都保持条件。我们要把条件以一个字符串的形式保存到PageBean的url中,这个任务交给Servlet。
相关文章推荐
- struts2拦截器问题
- 第7周-MyTriangle类
- JAVA 上机作业5.4
- JDK8 十大新特性详解
- JAVA上机——5.4
- 中序表达式转后序表达式的java实现
- Java、Android在Eclipse上配置源代…
- 一道题理解Java父子类初始化顺序什么是CopyOnWrite容器
- 大龄屌丝自学笔记--Java零基础到菜鸟--034
- 第7周-反向显示一个数
- Java控制台实现计算器[面向对象思想-02]
- spring的懒加载
- JVM、JRE与JDK简介
- Struts2 验证,validation.xml常用的验证规则
- 一个Spring Scheduler (Quartz) 动态添加,删除,修改任务的例子
- 通过Java获取百度音乐API中的MP3链接
- Java中类修饰符作用域
- hibernate学习入门3
- Java学习笔记
- 第6章 堆排序 java实现 简单版 泛型版 最大优先级队列