mybatis-plus 分页查询
时间: 2023-05-03 15:07:48 浏览: 161
mybatis-plus 是基于 mybatis 的增强工具,提供了很多方便实用的功能,其中包括分页查询。分页查询通常用于处理海量数据时,对数据进行分页展示,以优化系统性能。
使用 mybatis-plus 进行分页查询需要注意以下几点:
1. 在 mapper 接口中定义方法时需要使用 IPage<T> 类型的参数,其中 T 为实体类。
2. 在 service 层调用 mapper 中的分页查询方法时,需要传入当前页数和每页显示的数量,可以通过 Page<T> 对象来实现。
3. 在 mapper 映射文件中使用 select 标签进行查询,需要按照 mybatis-plus 提供的语法结构来书写,主要包括表名、查询条件、分页条件等。
例如,以下是使用 mybatis-plus 进行分页查询的一个示例:
在 mapper 中定义方法:
```
public interface UserMapper extends BaseMapper<User> {
IPage<User> selectUserByPage(Page<?> page, @Param("username") String username);
}
```
在 service 中实现分页查询:
```
@Override
public IPage<User> getUserByPage(int pageNum, int pageSize, String username) {
// 创建分页对象
Page<User> page = new Page<>(pageNum, pageSize);
// 调用 mapper 方法进行分页查询
return userMapper.selectUserByPage(page, username);
}
```
在 mapper 映射文件中编写查询语句:
```
<select id="selectUserByPage" resultMap="userResultMap">
select * from user
<where>
<if test="username != null and username != ''">
and username like concat('%', #{username}, '%')
</if>
</where>
order by id desc
</select>
```
通过以上步骤,就可以实现在 mybatis-plus 中进行分页查询并展示数据。
阅读全文