springboot实现mybatisplus分页查询
时间: 2023-08-31 21:09:13 浏览: 124
SpringBoot实现分页
5星 · 资源好评率100%
1. 引入依赖
在pom.xml中添加mybatis-plus和分页插件的依赖:
```xml
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.4.2</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-extension</artifactId>
<version>3.4.2</version>
</dependency>
```
2. 配置分页插件
在MybatisPlusConfig类中配置分页插件:
```java
@Configuration
public class MybatisPlusConfig {
/**
* 分页插件
*/
@Bean
public PaginationInterceptor paginationInterceptor() {
return new PaginationInterceptor();
}
}
```
3. 实现分页查询
编写查询方法,使用Page对象进行分页查询:
```java
@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
@Override
public IPage<User> getUserList(int pageNum, int pageSize) {
Page<User> page = new Page<>(pageNum, pageSize);
return baseMapper.selectPage(page, null);
}
}
```
其中,Page类是mybatis-plus提供的分页对象,参数pageNum和pageSize分别表示当前页码和每页条数。
4. 返回分页结果
在Controller中调用getUserList方法,并将查询结果封装为Response对象:
```java
@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/list")
public Response getUserList(@RequestParam(defaultValue = "1") int pageNum,
@RequestParam(defaultValue = "10") int pageSize) {
IPage<User> userList = userService.getUserList(pageNum, pageSize);
return Response.success(userList);
}
}
```
其中,Response是自定义的响应对象,用于封装返回结果。
阅读全文