分页简介[Java编程]
本文“分页简介[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
基本上有两种办法
1.利用可转动记录集的游标举行分页
2.利用SQL语句,如top,limit等
----------------------
1.select10000条记录,要取出第11条到20条记录,
利用可转动的ResultSet,转动到第11条,然后顺次取出10条就OK了,
这样分页都在数据库服务器上举行,数据库服务器压力大,耗内存.
(改正这里的错误,分页在客户端举行,在数据量大的时刻这样分页是不可取的,倡议利用SQL语句分页,多谢各位的指正
)
不过该法最简单,实施分页时,只需给定三个参数,sql语句,page和page_size参数
定义一个可转动的ResultSet略微有点麻烦
Connectioncn=*******;
stmt=cn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery(sql);
这样便可以利用
rs.absolute(pos)举行定位了,
其实假如利用forward-only的resultset也可以,只用rs.next()移动记录集便可以了
2.利用SQL语句分页,
以sql-server的top为例
selecttoppage_size*fromt_testwhereidnotin(selecttopSKIPidfromt_testorderbyid
desc)
orderbyiddesc
intskip=page_size*(page-1)
用这个办法分页性能大概会好些,不过麻烦
3.假如利用ibatis,hibernate等,分页已经内部实现了,设置一下便可以了,
其底层的代码没有具体看过,应当利用办法1,绝对不会利用办法2
(改正这里的错误,ibatis,hibernate等利用的应当是sql语句分页)
以上是“分页简介[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |