1. 程式人生 > >Mybatis分頁外掛的使用配置

Mybatis分頁外掛的使用配置

  • 開源中國介紹參考地址:

  • http://www.oschina.net/p/mybatis_pagehelper

  •  Github 原始碼介紹地址:  

  • https://github.com/pagehelper/Mybatis-PageHelper

  • 使用配置

  • 1、修改 pom 檔案, 新增分頁 jar 包依賴

  •  
  •     <!-- 分頁 -->
        <dependency>
          <groupId>com.github.pagehelper</groupId>
          <artifactId>pagehelper</artifactId>
          <version>4.1.0</version>
        </dependency>
  • 2、修改 mybatis.xml 檔案 

  •  
  • <plugins>
            <!-- com.github.pagehelper為PageHelper類所在包名 -->
            <plugin interceptor="com.github.pagehelper.PageHelper">
                <property name="dialect" value="mysql" />
                <!-- 該引數預設為false -->
                <!-- 設定為true時,會將RowBounds第一個引數offset當成pageNum頁碼使用 -->
                <!-- 和startPage中的pageNum效果一樣 -->
                <property name="offsetAsPageNum" value="true" />
                <!-- 該引數預設為false -->
                <!-- 設定為true時,使用RowBounds分頁會進行count查詢 -->
                <property name="rowBoundsWithCount" value="true" />
                <!-- 設定為true時,如果pageSize=0或者RowBounds.limit = 0就會查詢出全部的結果 -->
                <!-- (相當於沒有執行分頁查詢,但是返回結果仍然是Page型別) -->
                <property name="pageSizeZero" value="true" />
                <!-- 3.3.0版本可用 - 分頁引數合理化,預設false禁用 -->
                <!-- 啟用合理化時,如果pageNum<1會查詢第一頁,如果pageNum>pages會查詢最後一頁 -->
                <!-- 禁用合理化時,如果pageNum<1或pageNum>pages會返回空資料 -->
                <property name="reasonable" value="true" />
                <!-- 3.5.0版本可用 - 為了支援startPage(Object params)方法 -->
                <!-- 增加了一個`params`引數來配置引數對映,用於從Map或ServletRequest中取值 -->
                <!-- 可以配置pageNum,pageSize,count,pageSizeZero,reasonable,不配置對映的用預設值 -->
                <property name="params"
                          value="pageNum=start;pageSize=limit;pageSizeZero=zero;reasonable=heli;count=countsql" />
            </plugin>
        </plugins>
  • 3、UserDao 介面, UserMapper.xml 新增對應方法與實現 sql

  • 4、對應 UserService 介面新增分頁查詢方法

  • 備註:分頁外掛 如果傳入的頁碼 操作記錄總頁數 此時我們得到的是最後一頁的記錄