关于Springboot中使用Pagehelper说明
1. Pagehelper简介
PageHelper官网
2. springboot整合pagehelper说明
2.1 引入依赖
<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.2.5</version></dependency>
2.2 配置pagehelper
yml配置与java配置二选一即可
2.2.1 yml配置
pagehelper:params: count=countSqlreasonable: truesupport-methods-arguments: trueauto-dialect: mysql
2.2.2 JAVA配置
@Configuration
@ConditionalOnProperty(name = "pagehelper.supportMethodsArguments")
public class PageHelperConfig {/*** 注入pageHelper配置*/@Beanpublic PageHelper getPageHelper() {PageHelper pageHelper = new PageHelper();Properties properties = new Properties();properties.setProperty("helperDialect", "mysql");properties.setProperty("reasonable", "true");properties.setProperty("supportMethodsArguments", "true");properties.setProperty("params", "count=countSql");pageHelper.setProperties(properties);return pageHelper;}
}
2.2.3 配置说明
helperDialect
:分页插件会自动检测当前的数据库链接,自动选择合适的分页方式。 你可以配置 helperDialect 属性来指定分页插件使用哪种方言。配置时,可以使用下面的缩写值:oracle
,mysql
,mariadb
,sqlite
,hsqldb
,postgresql
,db2
,sqlserver
,informix
,h2
,sqlserver2012
,derby
。
特别注意:使用 SqlServer2012 数据库时,需要手动指定为 sqlserver2012 ,否则会使用 SqlServer2005 的方式进行分页。 你也可以实现 AbstractHelperDialect ,然后配置该属性为实现类的全限定名称即可使用自定义的实现方法。reasonable
:分页合理化参数,默认值为false
。当该参数设置为true
时, pageNum<=0 时会查询第一页, pageNum>pages (超过总数时),会查询最后一页。默认 false 时,直接根据参数进行查询。supportMethodsArguments
:支持通过 Mapper 接口参数来传递分页参数,默认值 false ,分页插件会从查询方法的参数值中,自动根据上面 params 配置的字段中取值,查找到合适的值时就会自动分页。 使用方法可以参考测试代码中的 com.github.pagehelper.test.basic 包下的 ArgumentsMapTest 和 ArgumentsObjTest 。params
:为了支持 startPage(Object params) 方法,增加了该参数来配置参数映射,用于从对象中根据属性名取值, 可以配置 pageNum,pageSize,count,pageSizeZero,reasonable ,不配置映射的用默认值, 默认值为pageNum=pageNum;pageSize=pageSize;count=countSql;reasonable=reasonable;pageSizeZero= pageSizeZero 。
2.3 使用pagehelper
controller.java
@PostMapping("/logs")public CommonResult listLogs(Integer currentPage,Integer size,SelectLogRequest request) {return new CommonResult(logService.queryByLimit(currentPage,size,request);}
logService.java
/*** 按条件分页查询数据* @param currentPage 当前页码* @param size 当前页大小* @param request 查询条件* @return*/PageInfo<LogPo> queryByLimit(Integer currentPage, Integer size, SelectLogRequest request);
logServiceImpl.java
/*** 按条件分页查询数据** @param request 分页查询条件* @return 日志列表*/@Overridepublic PageInfo<LogPo> queryByLimit(Integer currentPage, Integer size, SelectLogRequest request) {PageHelper.startPage(currentPage, size);//按条件分页查询List<LogPo> logs = logMapper.queryByLimit(request);PageInfo<LogPo> pageInfo = new PageInfo<LogPo>(logs);return pageInfo;}
logMapper.java
List<LogPo> queryByLimit(@Param("logDto") SelectLogRequest logDto);
logMapper.xml
<select id="queryByLimit" resultMap="PublishLogsMap">selectid, properties_path, log_path, version, operate, execute_user, execute_result, gmt_createfrom publish_logs<include refid="queryWhere"></include>order by gmt_create desc</select>
使用说明
- 返回值为PageInfo类型
- 使用PageHelper.startPage(currentPage, size);开始分页
- 查询符合条件的记录,并将记录封闭到PageInfo中返回
关于Springboot中使用Pagehelper说明相关推荐
- .jar中没有主清单属性_如何在springboot中使用PageHelper分页插件
目录: PageHelper简介 使用maven引入相关的jar 配置PageHelper方言 编写业务逻辑代码 PageInfo类中几个常用属性的注释 一. PageHelper简介 PageHel ...
- 在Springboot中使用pagehelper实现分页管理
我们在开发Web应用时,经常会使用到分页. 如果你也在用 MyBatis,建议尝试该分页插件pagehelper,这一定是最方便使用的分页插件.分页插件支持任何复杂的单表.多表分页. 官网地址:htt ...
- 如何在springboot中使用PageHelper分页插件
文章目录 1. pom依赖 2. yml 3. 实体类 4. mapper映射文件 4. mapper接口 5. service接口 6. 实现类 7. controller 8. 浏览器验证 使用思 ...
- 在springboot中使用PageHelper(mybatis的分页插件) 以及自定义分页
PageHelper是国内非常优秀的一款开源的mybatis分页插件,它支持基本主流与常用的数据库, 例如mysql. oracle.mariaDB. DB2. SQLite.Hsqldb等. 本项目 ...
- springboot中的mybatis是如果使用pagehelper的
springboot中的mybatis是如果使用pagehelper的 springboot中使用其他组件都是基于自动配置的AutoConfiguration配置累的,pagehelper插件也是一样 ...
- SpringBoot中使用Mybatis-plus整合PageHelper分页插件踩坑
今天使用SpringBoot中使用Mybatis-plus整PageHelper分页插件把我给坑惨了,我报错的pom.xml配置如下,其它的依赖就忽略掉了 <!--pagehelper --&g ...
- SpringBoot中 pagehelper插件使用
pom.xml 中添加 pagehelper 依赖 <!--pagehelper--><dependency><groupId>com.github.pagehel ...
- SpringBoot + Mybatis + Druid + PageHelper 实现多数据源并分页
点击关注公众号,Java干货及时送达 本篇文章主要讲述的是SpringBoot整合Mybatis.Druid和PageHelper 并实现多数据源和分页.其中SpringBoot整合Mybatis这块 ...
- SpringBoot+Mybatis+ Druid+PageHelper 实现多数据源并分页
点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试资料 作者: 虚无境 cnblogs.com/xuwujing/p/89 ...
最新文章
- 在 Azure 上部署 Asp.NET Core Web App
- 《Java基础入门》课后习题答案 资源分享
- 这里有一个3天的秘境邀请!
- VC++生成序列号和注册机总结
- Redis(七)Redis的噩梦:阻塞
- win2008 mysql端口_Win7系统下SqlServer 2008修改IP端口的方法
- ios基础考试题1,实现按钮点击改变位置和图片的透明度和动画的使用
- 编写 android 测试单元该做的和不该做的事
- oracle 存储过程给另一个用户的权限问题
- python中random库
- api 文件长度_上传下载API
- 未来时速——第一章 用事实的力量管理企业
- MD5 加密算法详解
- 欧洲杯:匈牙利vs葡萄牙时间:06-15 23:59 星期二
- 对抗训练-smart 论文阅读笔记
- 中华人民共和国数据安全法
- git常用命令-进阶
- Qt实现圆形头像,支持Url和本地图片
- python的DDT模块
- 苹果x电池多少毫安_苹果x换原装电池体验