mybatis提供了一个非常好用的分页插件,之前集成的时候需要配置mybatis-config.xml的方式,今天我们来看下它是如何集成springboot来更好的服务的。

只能说springboot的强大之处真是不容小觑。

第一步:添加依赖

springboot如何集成mybatis的pagehelper分页插件_xml

第二步:配置文件简单:

springboot如何集成mybatis的pagehelper分页插件_sql_02

第三步:编写代码:

springboot如何集成mybatis的pagehelper分页插件_spring_03

 

第四步效果:



{
"status": 0,
"data": {
"pageNum": 1,
"pageSize": 1,
"size": 1,
"startRow": 0,
"endRow": 0,
"total": 1,
"pages": 1,
"list": [
{
"id": 26,
"categoryId": 100002,
"name": "Apple iPhone 7 Plus (A1661) 128G 玫瑰金色 移动联通电信4G手机",
"subtitle": "iPhone 7,现更以红色呈现。",
"mainImage": "241997c4-9e62-4824-b7f0-7425c3c28917.jpeg",
"status": null,
"price": 6999
}
],
"prePage": 0,
"nextPage": 0,
"isFirstPage": true,
"isLastPage": true,
"hasPreviousPage": false,
"hasNextPage": false,
"navigatePages": 8,
"navigatepageNums": [
1
],
"navigateFirstPage": 1,
"navigateLastPage": 1,
"firstPage": 1,
"lastPage": 1
}
}


  看到没,springboot集成了这个插件就是这么的简单!

先看到了使用,我们再开看看,背后的故事吧

 

重要提示:

  • 只有紧跟在 PageHelper.startPage 方法后的第一个 MyBatis 的查询(select)方法会被分页。
  • 请不要在系统中配置多个分页插件(使用 spring 时,mybatis-config.xml 和 Spring<bean> 配置方式,请选择其中一种,不要同时配置多个分页插件)。
  • 对于带有 for update 的 sql,会抛出运行时异常,对于这样的 sql 建议手动分页,毕竟这样的 sql 需要重视。
  • 由于嵌套结果方式会导致结果集被折叠,因此分页查询的结果在折叠后总数会减少,所以无法保证分页结果数量正确