java web 分页技术详解及代码
关于在 java web 上实现分页技术,方式实际上有很多,也各有个的特点,此处我只写些我
的认识。java web 分页无外乎两种,一种是直接取出来,放到一个集合里,通过传 begin 和
end 参数控制分页,还有一种就是把分页工作交给数据库,让数据库读取需要的 begin~end
之间的数据。
我们这里,先看从数据库中读取的情况
操作数据库就需要 tsql 语句,mssqlserver2005 新推出了一个 row_number()很好用,还有就
是 mysql 的 limit 也非常好使。
mssqlserver2005 的如下:
select * from (select row_number() over (order by ename) as rn, f.* from emp f) b
where b.rn between 6 and 10;
mysql 的:
select * from emp limit 5,5
mysql 的应注意,使用 limit 时,表中必须用主键,还有 limit 后的两个参数分别代表(标识
位,长度),标识位从 0 开始
现在开始一步步完成,首先完成 model 模块,建立 pagebean
import java.util.*;
public class PageBean {
private Collection objs;//从数据库中读的集合
private int totalCount;//总的条数
private int pageNo;//当前的页数
private int pageCount;//每页的条数
public int getPageCount() {
return pageCount;
}
public void setPageCount(int pageCount) {
this.pageCount = pageCount;
}