Java分页

1.网站中常见的分页样式

1)采用传统的分页方式,可以明确获得数据信息,如有多少数据,显示多少页等

2)采用下拉式的分页方式,一般无法获取明确的数据数量相关的信息,但是在分页操作之后,仍然可以看到之前查询的数据。

2.常见的分页方式

1)使用List接口中的subList(int startIndex,int endIndex)方法实现分页

 

List<E>subList(int fromIndex, int toIndex)
          返回列表中指定的 fromIndex(包括 )和 toIndex(不包括)之间的部分视图。

 

2)直接使用数据库的sql语句进行分页的实现

 

利用数据库自带的分页语法,使用分页语句,获得分页数据,如mysql使用limit,oracle使用rownum关键字等

Mysql查询语句:

select * from t_teacher limit 0,10

表示从t_student这张表的第0个记录开始查找10条记录。

PostgreSQL查询语句:

select * from t_teacher limit 10 offset 0

Oracle查询语句:

select * from 

(

select s.*,rownum rn 

from(select * from t_teacher)s

where rownum <= 10

)

where rn>=1

3)使用hibernate等框架技术直接实现跨数据库的分页

创建Query或者Criteria对象,查询时设置firstResult和maxResults属性

firstResult表示从第几条开始查询,maxResults表示查询多少条的数据

String hql = "from Student";

Query q = session.createQuery(hql);

q.setFirstResult(0);

q.setMaxResults(10);

List l = q.list();

3.常见的分页方式的实现比较

 

实现方式优点缺点适用场景
subList简单易用效率低无法按需批量获取数据
SQL语句简单,直接,效率高数据库兼容性差不要求数据库兼容性
hibernate框架面向对象,兼容性强复杂查询性能低兼容不同的数据库

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值