建一个config类
@Configuration
public class MybatisPlusConfig {
@Bean
public PaginationInterceptor paginationInterceptor(){
return new PaginationInterceptor();
}
}
编写controller
post /article/search/{page}/{size}
@PostMapping("search/{page}/{size}")
public Result findByPage(@PathVariable Integer page,
@PathVariable Integer size,
@RequestBody Map<String,Object> map){
//根据条件分页查询
Page<Article> pageDate = articleService.findByPage(map,page,size);
//封装分页返回对象
PageResult<Article> pageResult =new PageResult<>(
pageDate.getTotal(),pageDate.getRecords()
);
return new Result(true,StatusCode.OK,"查询分页成功",pageResult);
}
编写service
public Page<Article> findByPage(Map<String, Object> map, Integer page, Integer size) {
//设置查询条件
EntityWrapper<Article> wrapper =new EntityWrapper<>();
Set<String> keySet = map.keySet();
for (String key : keySet) {
// if (map.get(key) !=null){
// wrapper.eq(key,map.get(key));
// }
wrapper.eq(map.get(key) !=null,key,map.get(key));
}
//设置分页参数
Page<Article> pageData =new Page<>(page,size);
//第一个是分页参数,第二个是查询条件
List<Article> list = articleDao.selectPage(pageData, wrapper);
pageData.setRecords(list);
return pageData;
}
整合完成!!!