首页 > 编程 > Java > 正文

Mybatis分页插件PageHelper的使用详解

2019-11-26 13:28:32
字体:
来源:转载
供稿:网友

1.说明

如果你也在用Mybatis,建议尝试该分页插件,这个一定是最方便使用的分页插件。

该插件目前支持Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库分页。

2.使用方法

第一步:在Mybatis配置xml中配置拦截器插件:

<plugins>  <!-- com.github.pagehelper为PageHelper类所在包名 -->  <plugin interceptor="com.github.pagehelper.PageHelper">    <!-- 设置数据库类型 Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库-->        <property name="dialect" value="mysql"/>  </plugin></plugins>

第二步:在代码中使用

1、设置分页信息:

//获取第1页,10条内容,默认查询总数countPageHelper.startPage(1, 10); //紧跟着的第一个select方法会被分页List<Country> list = countryMapper.selectIf(1);

2、取分页信息

//分页后,实际返回的结果list类型是Page<E>,如果想取出分页信息,需要强制转换为Page<E>,Page<Country> listCountry = (Page<Country>)list;listCountry.getTotal();

3、取分页信息的第二种方法

//获取第1页,10条内容,默认查询总数countPageHelper.startPage(1, 10);List<Country> list = countryMapper.selectAll();//用PageInfo对结果进行包装PageInfo page = new PageInfo(list);//测试PageInfo全部属性//PageInfo包含了非常全面的分页属性assertEquals(1, page.getPageNum());assertEquals(10, page.getPageSize());assertEquals(1, page.getStartRow());assertEquals(10, page.getEndRow());assertEquals(183, page.getTotal());assertEquals(19, page.getPages());assertEquals(1, page.getFirstPage());assertEquals(8, page.getLastPage());assertEquals(true, page.isFirstPage());assertEquals(false, page.isLastPage());assertEquals(false, page.isHasPreviousPage());assertEquals(true, page.isHasNextPage());

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表