SpringBoot 集成PageHelper 分页组件
符号
阅读:648
2021-03-31 16:53:20
评论:0
第一步:添加依赖:
<!-- pagehelper -->
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.5</version>
</dependency>
第二步:application.properties 配置文件添加PageHelper 配置参数 或者通过配置类注入PageHelper 实例化对象:
第一种方式:
#pagehelper分页插件配置
pagehelper.helperDialect=mysql
pagehelper.reasonable=true
pagehelper.supportMethodsArguments=true
pagehelper.params=count=countSql
第二种方式:
@Configuration
public class MyBatisConfig {
/**
* 分页对象实列化
* @return
*/
@Bean
public PageHelper pageHelper() {
PageHelper pageHelper = new PageHelper();
Properties p = new Properties();
p.setProperty("offsetAsPageNum", "true");
p.setProperty("rowBoundsWithCount", "true");
p.setProperty("reasonable", "true");
p.setProperty("dialect", "mysql");
pageHelper.setProperties(p);
return pageHelper;
}
}
第三步:Controller 调用service 实现分页:
public Result findFullObj(JSONObject entity) {
if(logger.isDebugEnabled()){
logger.debug(entity.toJSONString());
}
Map<String, Object> param = JSONObject.toJavaObject(entity, Map.class);
PageParam rb = super.initPageBounds(param);
PageData<UcasArchInfo> pageList = service.selectAllPage(param, rb);
return Result.ok().setDatas("list",pageList.getData()).setDatas("limit", pageList.getPageSize()).setDatas("page", pageList.getPageNum()).setDatas("total_count", pageList.getTotalCount());
}
注意的是,分页代码PageHelper.startPage(pageNo,pageSize);
只对其后的第一个查询有效.
声明
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。