美文网首页
十、PageHelper (快速分页)

十、PageHelper (快速分页)

作者: Class鸣 | 来源:发表于2018-09-12 15:58 被阅读67次

准备jar

  • jsqlparser-0.9.5.jar
  • pagehelper-5.1.2.jar

配置文件

<!-- 引入分页插件,必须紧跟在在别名之后 -->
    <plugins>
        <plugin interceptor="com.github.pagehelper.PageInterceptor"></plugin>
    </plugins>

后台代码

  • 启动Mapper的方法为MyBatis Generator 反向生成

业务层代码

    /**查询所有的方法  所以给的 mapper.selectByExample(null); 的参数为null*/
    public List<Users> getAll() {
        // TODO Auto-generated method stub
        return mapper.selectByExample(null);
    }

Action层代码

    /**
     * 查询用户数据(分页查询)
     * 
     * @param没有传入参数pagenum时,给一个默认值>defaultValue="1"<
     */
    @RequestMapping("users.do")
    public String getUsers(@RequestParam(value = "pagenum", defaultValue = "1") Integer pagenum,Model model) {
        //引入PagerHelper分页插件
        //在查询之前调用分页设置(第几页,每页大小)
        PageHelper.startPage(pagenum, 3);
        //startPage必须紧跟查询
        List<Users> users = biz.getAll();
        //使用PageInfo包装查询后的结果,只需要将pageInfo交给页面就可以了
        //他封装了详细的分页信息,包括我们查询的信息,连续显示的页数为5
        PageInfo page = new PageInfo(users,5);
        model.addAttribute("pageInfo", page);
        return "userslist.jsp";
    }

**********************************************PageInfo*************************************************************

关于PageInfo的内容

//当前页
private int pageNum;
//每页的数量
private int pageSize;
//当前页的数量
private int size;

//当前页面第一个元素在数据库中的行号
private int startRow;
//当前页面最后一个元素在数据库中的行号
private int endRow;
//总记录数
private long total;
//总页数
private int pages;
//结果集
private List<T> list;


//前一页
private int prePage;
//下一页
private int nextPage;


//是否为第一页
private boolean isFirstPage = false;
//是否为最后一页
private boolean isLastPage = false;
//是否有前一页
private boolean hasPreviousPage = false;
//是否有下一页
private boolean hasNextPage = false;
//导航页码数
private int navigatePages;
//所有导航页号
private int[] navigatepageNums;
//导航条上的第一页
private int navigateFirstPage;
 //导航条上的最后一页
private int navigateLastPage;

相关文章

网友评论

      本文标题:十、PageHelper (快速分页)

      本文链接:https://www.haomeiwen.com/subject/rfzvgftx.html