java实现分页技术详解,javaweb如何实现分页
java怎么分页
实现原理很简单,就是建立一个Page类,里面放了当前访问的页数(这是客户端浏览器传到后台的数据,所以你的分页需要用它来定位记录条目)和每页显示的记录行数。
然后通过分页计算可以得到下面的数据。(假设你的页数从1开始)
1.总页数=总记录数/页面大小,如果0!=每页大小的总记录数%,则总页数为1
2.当前页数(从浏览器传递的参数中获得)
3.表格记录的起始位置=(当前页数-1)*每页的大小。
4.记录总数(select count(*)from[table name][where[condition]],通过查询数据库获得)
5.每个页面的大小可以是固定的,也可以从页面中传输。有了这些参数,就可以使用sql语句找出相应的记录。
mysql数据库使用limit表记录起始位置,每个页面大小语句都添加到查询语句的末尾。sqlserver数据库使用top语句和not in语句。
Oracle数据库是用rownum完成的。
具体代码如下:
公共课程页面{
private long total count=0;//记录总数
private int page number=1;//当前页码,默认显示第一页。
private int pageSize=20//每页的大小,默认为每页20个
private int total page=0;//总页数,默认为0
private int startRow=0;//起始记录行号,默认从表头开始。
/**
*分页计算方法,由setTotalCount调用
*/
公共void分页(){
//计算总页数
if (this.totalCount % pageSize==0)
this . total page=new Long(this . total count/pageSize)。int value();
其他
this . total page=new Long(this . total count/pageSize)。int value()1;
//排除错误的页码
if (this.pageNumber 1)
this . page number=1;
if(this . page number this . total page)
this . page number=this . total page;
//计算起始行号
this . startrow=(this . page number-1)* this . pagesize;
}
public long getTotalCount() {
返回totalCount
}
public void setTotalCount(long total count){
this . total count=total count;
this . pagination();
}
public int getPageNumber() {
返回页码;
}
public void setPageNumber(int page number){
this . page number=page number;
}
public int getPageSize() {
返回pageSize
}
public void setPageSize(int pageSize){
this.pageSize=pageSize
}
public int getTotalPage() {
返回totalPage
}
public void settotal page(int total page){
this . total page=total page;
}
public int getStartRow() {
返回startRow
}
public void setStartRow(int startRow){
this.startRow=startRow
}
}前端采用jsp,可以通过html和计算的数据以页面的形式显示。
我们,大量免费的Java入门教程,欢迎在线学习!这就是java分页的细节。更多请关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。