SpringBoot 集成PageHelper 分页组件

第一步:添加依赖:

<!-- 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);只对其后的第一个查询有效.

发布了1266 篇原创文章 · 获赞 275 · 访问量 290万+

猜你喜欢

转载自blog.csdn.net/zhouzhiwengang/article/details/103770928
今日推荐