myabtisplus分页查询
时间: 2023-11-09 18:02:15 浏览: 90
mybatis-plus分页查询
MyBatis-Plus 提供了 Page 类来支持分页查询,使用起来非常方便。具体步骤如下:
1. 在 mapper 接口中添加方法,方法参数为 Page 对象和查询条件对象,返回值为 IPage 对象。
```java
IPage<User> selectUserPage(Page<User> page, @Param("user") User user);
```
2. 在 mapper.xml 文件中编写 SQL 语句,使用 limit 关键字实现分页查询。
```xml
<select id="selectUserPage" resultType="com.example.demo.entity.User">
select * from user
<where>
<if test="user.username != null and user.username != ''">
and username like concat('%', #{user.username}, '%')
</if>
<if test="user.email != null and user.email != ''">
and email like concat('%', #{user.email}, '%')
</if>
</where>
order by create_time desc
limit #{page.offset}, #{page.size}
</select>
```
3. 在 Service 层调用 mapper 方法,传入 Page 对象和查询条件对象。
```java
Page<User> page = new Page<>(1, 10);
User user = new User();
user.setUsername("test");
IPage<User> userPage = userService.selectUserPage(page, user);
```
4. 获取分页查询结果。
```java
List<User> userList = userPage.getRecords();
long total = userPage.getTotal();
```
阅读全文