1. 程式人生 > >MyBatis(七)——使用PageHelper外掛進行分頁

MyBatis(七)——使用PageHelper外掛進行分頁

一、概述

  PageHelper是MyBatis中非常方便的第三方分頁外掛。
  
  官方文件:

https://github.com/pagehelper/Mybatis-PageHelper/blob/master/README_zh.md

  HowToUse:

https://github.com/pagehelper/Mybatis-PageHelper/blob/master/wikis/en/HowToUse.md

   我們可以對照官方文件的說明,快速的使用外掛。
 

二、PageHelper的簡單使用

一、匯入PageHelper的相關包。

    <!--引入pagehelper分頁外掛-->
    <dependency>
      <groupId>com.github.pagehelper</groupId>
      <artifactId>pagehelper</artifactId>
      <version>5.0.0</version>
    </dependency>

二、在MyBatis全域性配置檔案中配置分頁外掛

<configuration>
    <settings
>
<!--開啟駝峰命名--> <setting name="mapUnderscoreToCamelCase" value="true"/> <setting name="jdbcTypeForNull" value="NULL"/> <!--開啟SQL日誌--> <setting name="logImpl" value="STDOUT_LOGGING" /> <!-- 開啟二級快取 --> <setting
name="cacheEnabled" value="true"/>
</settings> <!--mybatis分頁外掛--> <plugins> <plugin interceptor="com.github.pagehelper.PageInterceptor"> <!-- 使用下面的方式配置引數,後面會有所有的引數介紹 --> <!--<property name="param1" value="value1"/>--> </plugin> </plugins> <databaseIdProvider type="DB_VENDOR"> <property name="MySQL" value="mysql"/> <property name="Oracle" value="oracle"/> </databaseIdProvider> </configuration>

三、使用PageHelper提供的方法進行分頁

    PageHelper.startPage(2, 5);

四、使用更強大的PageInfo封裝返回結果

    @org.junit.Test
    public void getList() throws IOException {
        PageHelper.startPage(2, 2);
        List<Employee> employee = employeeMapper.selectAll();
        for (Employee e: employee) {
            System.out.println(e);
        }
        PageInfo<Employee> info = new PageInfo<>(employee);
        System.out.println("當前頁碼:"+info.getPageNum());
        System.out.println("總記錄數:"+info.getTotal());
        System.out.println("每頁的記錄數:"+info.getPageSize());
        System.out.println("總頁碼:"+info.getPages());
        System.out.println("是否第一頁:"+info.isIsFirstPage());
    }