Intellij IDEA 2018.2 使用Mybatis分页插件PageHelper使用

   一般使用插件实现分页功能,但是在使用插件之前我们首先手动写出分页代码,对比插件实现的分页,利于我们理解分页底层实现和更好的实现插件分页实用技术,本次使用的插件是PageHelper(采用都是物理分页)

下载: https://github.com/pagehelper/Mybatis-PageHelper

Intellij IDEA 2018.2 使用Mybatis分页插件PageHelper使用_第1张图片

下载这两个包 !

pegeHelper插件分页只是几个部分

第一:需要的mybatis.xml的配置文件中配置插件;并将下载的包添加的工程中哦!

 
        
    

第二:在servlect中使用PageHelper的startPage方法

Page page=PageHelper.startPage(第几页, 每页显示的个数);

第三:PageHelper拦截器会拦截查询方法,并且在查询的sql中根据不同的数据库拼接分页语句实现分页

第四:将PageInfo这个类存放分页的各种属性信息,核心代码就这三行,num的值由页面传递过来

         //获得分页对象
         Page page=PageHelper.startPage(Integer.valueOf(num), 10);
         //获得所有数据
         List list=userservice.selectPageInfo();
         //获得PageInfo对象
         PageInfo pageInfo =page.toPageInfo();

UserinfoMapper.xml文件

  

测试:

 @Test
    public void all2() {
        //
        SqlSession session = null;

        try {

            //连接会话
            session = MybatisUtil.getSession();
//
            System.out.println(session);
//
            //获得接口
            UserinfoMapper mapper = session.getMapper(UserinfoMapper.class);

          Page page= PageHelper.startPage(1, 6);


//        Userinfo u =new Userinfo();

            //调用方法
            List list = mapper.selectByExample(null);

            //  System.out.println(list.size());
            for (Userinfo cls : list) {
                System.out.println(cls);
            }

          //封装PageInfo对象
//            PageInfo pageInfo = new PageInfo<>(list);
            PageInfo pageInfo =page.toPageInfo();

            System.out.println("总页数:"+pageInfo.getPages() + "==>总个数:" + pageInfo.getTotal());
            System.out.println("当前页:"+pageInfo.getPageNum() + "==>每页显示的个数:" + pageInfo.getPageSize());
            System.out.println("前一页:"+pageInfo.getPrePage() + "==>下一页:" + pageInfo.getNextPage());
            System.out.println("第一页:"+pageInfo.getNavigateFirstPage() + "==>最后一页:" + pageInfo.getNavigateLastPage());
            System.out.println("当前页的列表"+pageInfo.getList().size());

        } catch (Exception ex) {
            ex.printStackTrace();
        } finally {
            //关闭
            MybatisUtil.closeSession(session);
        }


    }
}

效果: 

Intellij IDEA 2018.2 使用Mybatis分页插件PageHelper使用_第2张图片

 

 

你可能感兴趣的:(intellij,IDEA)