在 MyBatis 中,要實現分頁查詢,你需要使用 RowBounds 對象或者是 PageHelper 插件。這里我將為你展示如何使用這兩種方法來實現分頁查詢。
首先,在你的 Mapper 接口中,添加一個使用 RowBounds 參數的方法:
public interface UserMapper {
List<User> findAllWithRowBounds(RowBounds rowBounds);
}
然后,在對應的 XML 文件中,編寫 SQL 查詢語句:
SELECT * FROM user
</select>
最后,在你的 Service 層或 Controller 層,使用 RowBounds 對象進行分頁查詢:
int offset = (pageNum - 1) * pageSize;
int limit = pageSize;
RowBounds rowBounds = new RowBounds(offset, limit);
List<User> users = userMapper.findAllWithRowBounds(rowBounds);
首先,添加 PageHelper 依賴到你的項目中。如果你使用 Maven,可以在 pom.xml 文件中添加以下依賴:
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.2.0</version>
</dependency>
接下來,在你的 Mapper 接口中,添加一個查詢所有用戶的方法:
public interface UserMapper {
List<User> findAll();
}
然后,在對應的 XML 文件中,編寫 SQL 查詢語句:
SELECT * FROM user
</select>
在你的 Service 層或 Controller 層,使用 PageHelper 進行分頁查詢:
// 設置分頁參數
PageHelper.startPage(pageNum, pageSize);
// 調用 Mapper 方法進行查詢
List<User> users = userMapper.findAll();
// 獲取分頁信息
PageInfo<User> pageInfo = new PageInfo<>(users);
現在,你已經成功實現了 MyBatis 的分頁查詢。注意,這里的分頁參數是基于 1 的,即 pageNum 的值從 1 開始。