重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

利用Java怎么实现一个分页查询并显示功能

本篇文章为大家展示了利用Java怎么实现一个分页查询并显示功能,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

创新互联-专业网站定制、快速模板网站建设、高性价比汪清网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式汪清网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖汪清地区。费用合理售后完善,十载实体公司更值得信赖。

sql语句大概形式为:

select * from table limit 开始索引,显示条数

用该语句就会实现分块查询,并且每页显示固定条数。

首先要实现后台分页,我们需要知道它有多少页,每页有多少行,这就需要知道一共多少行,调用sql语句时还需要知道每一页的开始索引,开始索引是根据当前页数算出来的,所以还需要知道当前页数,查询后会返回一个列表存储当前页数据。将这些属性及获取设置的方法封装成一个类就有了下面的page类:

Page类

public class Page {
  private List data;//数据列表
  private int pagenum;//当前页数
  private int pagesize;//当前页显示条数
  private int rows;//总行数
  public Page(int rows,int pagenum, int pagesize) {
    super();
    data=new ArrayList<>();
    this.rows=rows;
    this.setPagesize(pagesize);
    this.setPagenum(pagenum);    
  }
  public Page() {
    super();
  }
  public int getPagenum() {
    return pagenum;
  }
  public void setPagenum(int pagenum) {
    if(pagenum>getTotalpage())
    {
      this.pagenum=getTotalpage();
    }
    else {
      this.pagenum = pagenum;
    }  
    if(pagenum<1)
    {
      this.pagenum=1;
    }
  }
  public int getPagesize() {
    return pagesize;
  }
  public void setPagesize(int pagesize) {
    this.pagesize = pagesize;
  }
  public int getTotalpage() {
    //计算总页数
    if(rows%pagesize==0)
    {
      return rows/pagesize;
    }
    else {
      return rows/pagesize+1;
    }    
  }
  public int getRows() {
    return rows;
  }
  public void setRows(int rows) {
    this.rows = rows;
  }
  public int getIndexnum() {
    //获取索引值
    return pagesize*(pagenum-1);
  }
  public List getData() {
    return data;
  }
  public void setData(List data) {
    this.data = data;
  }
}

初始化时我们只需要获得数据总条数,页数及每页显示条数。数据总条数可以用sql语句select count(*)from table 获得。每次查询时只需要传入当前页数就可以了。将每次查询后的page对象传入jsp前台页面,并以一个div来显示

显示div

其中的一个choose是用于规定页面显示的最大页数,这里是5页,就是说当点到第4页是时,第1页就会消失,出现第6页。

上述内容就是利用Java怎么实现一个分页查询并显示功能,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。


新闻标题:利用Java怎么实现一个分页查询并显示功能
当前路径:http://cqcxhl.cn/article/igsjos.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP