mybatis分页查询
时间: 2023-08-29 17:13:14 浏览: 81
MyBatis 提供了一种方便的方式来执行分页查询,下面是一些基本步骤:
1. 在你的 Mapper 接口中定义一个方法来执行分页查询,这个方法应该接受一个 `RowBounds` 对象作为参数,它指定了查询的起始位置和返回的记录数。
```java
List<User> findByPage(RowBounds rowBounds);
```
2. 在 Mapper.xml 文件中,编写 SQL 语句时使用 `limit` 关键字来限制查询结果的数量。
```xml
<select id="findByPage" resultType="User">
select * from user
limit #{offset}, #{limit}
</select>
```
这里的 `#{offset}` 和 `#{limit}` 分别是 `RowBounds` 对象中的属性。
3. 在代码中使用 `SqlSession` 对象的 `selectList` 方法来执行分页查询。
```java
int pageNo = 1; // 当前页码
int pageSize = 10; // 每页记录数
int offset = (pageNo - 1) * pageSize; // 起始位置
RowBounds rowBounds = new RowBounds(offset, pageSize);
List<User> userList = sqlSession.selectList("com.example.mapper.UserMapper.findByPage", rowBounds);
```
这样就可以执行分页查询了。注意,这里的 `SqlSession` 对象可以通过 Mybatis 的工厂方法来获取。
阅读全文