MyBatisplus3.5.10.1 分页查询
时间: 2025-02-10 15:10:39 浏览: 183
### MyBatis Plus 3.5.10.1 分页查询 示例教程
MyBatis Plus 提供了便捷的分页插件,使得执行分页查询变得简单而高效。通过配置该插件,可以轻松实现物理分页,无需手动编写复杂的 SQL 或处理分页逻辑。
#### 配置分页插件
为了启用分页功能,在 `application.yml` 文件中添加如下配置:
```yaml
mybatis-plus:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
global-config:
db-config:
id-type: auto
plugins:
pagination:
enabled: true
```
接着,在启动类或配置类中注册分页拦截器:
```java
import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class MyBatisPlusConfig {
@Bean
public MybatisPlusInterceptor mybatisPlusInterceptor() {
MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
interceptor.addInnerInterceptor(new PaginationInnerInterceptor());
return interceptor;
}
}
```
#### 执行分页查询
完成上述配置后,可以通过以下方式执行分页查询:
```java
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
@SpringBootTest
public class UserTests {
@Autowired
private UserMapper userMapper;
@Test
public void testPaginationQuery() {
// 创建分页对象并指定当前页码和每页显示记录数
IPage<User> page = new Page<>(1, 5);
// 构建查询条件(可选)
QueryWrapper<User> queryWrapper = new QueryWrapper<>();
queryWrapper.like("name", "张三");
// 调用 mapper 方法进行分页查询
IPage<User> resultPage = userMapper.selectPage(page, queryWrapper);
// 输出查询结果
System.out.println(resultPage.getRecords());
// 获取总条目数量
long total = resultPage.getTotal();
// 判断是否有下一页数据
boolean hasNext = resultPage.hasNext();
}
}
```
此代码片段展示了如何利用 MyBatis Plus 的内置分页插件来简化分页查询的操作[^1]。
阅读全文
相关推荐
















