Mybatis分页插件PageHelper的简单使用

一、 Mybatis 框架的分页插件 PageHelper 是目前我用过的最简单的分页插件了,该插件 目前支持 Oracle Mysql MariaDB SQLite Hsqldb PostgreSQL 六种数据库分页。
他的使用非常简单, 简要步骤如下:
第一步: 添加 jar 到工程中,由于我是用的是 maven 创建的工程,因此在连接数据库的工程中的 pom 文件 中添加依赖就可以了,如下图:
 
第二步:在 SqlMapConfig.xml ,配置一个 plugin 如下
 
   
      
           
           
      
  
第二步:在 sql 语句执行之前,添加一个 PageHelper.startPage(page,rows)
PageHelper.startPage(page, rows); //设置页码和每页显示个数
第三步:执行查询语句即可。
第四步: 取分页结果 。创建一个 PageInfo 对象, 需要的参数 : 查询结果返回的 list 。从 PageInfo 中取出分页结果
//取分页后结果
        PageInfo pageInfo = new PageInfo<>(list);
        long total = pageInfo.getTotal();     //获取总个数
        System.out.println("total:" + total);
        int pages = pageInfo.getPages();      //获取当前页
        System.out.println("pages:" + pages);
        int pageSize = pageInfo.getPageSize(); //每页个数
        System.out.println("pageSize:" + pageSize);
        //最后返回需要的结果就行,此处的Result 是我用来给前台返回json格式数据的封装类,里面提供了total(总数)和rows(数据集合)两个属性
        PageResult result = new PageResult();
        result.setTotal(pageInfo.getTotal());
    result.setRows(list);  //设置查询的结果集
    returnresult;
web 层只需提供 page rows 两个参数即可 , 当然也可以设置查询条件 :
 @RequestMapping("/item/list")
        @ResponseBody  //把pojo转换成json数据返回
        public PageResult getItemList(Integer page, Integer rows){
               PageResult result = itemService.getItemList(page, rows);
               return result;
 
        }

你可能感兴趣的:(框架)