PageHelper与MyBatisPlus IPage分页插件的使用区别
IPage分页插件
①Mapper 定义分页查询接口,入参及返回值需要有IPage类型
IPage<PatientInfo> getPatientPage(IPage<PatientInfo> page,@Param("option") QueryOption option);
②编写映射文件xml
<select id = "getPatientPage" resultMap="getPatientPageMap">select * from view_patient_info<where><if test="option.patientId != null">and patient_id = #{option.patientId}</if></where>
</select>
③在service中调用mapper接口
public IPage<PatientInfo> getPatientInfoPage(QueryOption option){IPage<PatientInfo> page = new Page<>(option.getPageNum(),option.getPageSize());baseMapper.getPatientPage(page,option);return page;
}
这样就可以了。
PageHelper
①引入依赖
<dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper-spring-boot-starter</artifactId><version>1.3.1</version>
</dependency>
②在service中调用mapper接口
PageHelper不需要在Mapper接口中加入Page参数,可以直接用原先的Mapper里的List查询接口。
public PageInfo<PatientInfo> getPatientInfoPage(QueryOption option){PageHelper.startPage(option.getPageNum(),option.getPageSize());List<PatientInfo> list = baseMapper.getPatientList(option);PageInfo<PatientInfo> pageInfo = new PageInfo<>(list);return pageInfo;
}
总结:
IPage是MybatisPlus自带的插件,不需要额外引入依赖,但查询分页需要定义包含IPage类型的参数的专门接口。
PageHelper需要引入额外的依赖,但不强制要求使用包含分页参数的专门接口,可以直接使用已有的List查询接口。
另外它们返回的数据结构也有一点小区别。前端对接的时候要注意。
PageHelper与MyBatisPlus IPage分页插件的使用区别相关推荐
- MyBatis-Plus中分页插件IPage的使用
MyBatis-Plus中分页插件IPage的使用 使用步骤: 1.服务层的接口需要继承 IService<实体类> ,定义分页查询方法,其返回值类型是 IPage<实体类> ...
- limt和(pagehelper或者page分页插件)的区别
limit mysql当中的分页SQL应该怎么写? ①使用limit关键字,语法格式:limit startIndex,pageSize ②第⼀个数字:startIndex(起始下标,下标从0开始) ...
- 员工管理 Mybatis-Plus的分页插件
员工管理 Mybatis-Plus的分页插件 1.员工管理准备工作 分页插件配置类 分页公共响应类 全局日期转换类 员工类 2.获取所有员工分页查询 EmployeeController IEmplo ...
- [MyBatisPlus]Plus分页插件的配置和使用
Plus分页插件的配置和使用 配置类 package com.xxxx.mybatisplus.config;import com.baomidou.mybatisplus.annotation.Db ...
- MybatisPlus IPage分页无效
1.检查依赖是否正确 <!-- Mybatis带分页插件 --> <dependency><groupId>com.baomidou</groupId> ...
- 使用mybatis-plus的分页插件在开启join优化后,当出现cs、ur、uu等 隔离级别的关键字sql优化时会出现大量警告
版本 <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot- ...
- 分页查询 com.github.pagehelper 5.1.10 分页插件配置
pom.xml deptService.java deptController.java com.github.pagehelper 为5.1.10版本 使用PageInterceptor插件进行查 ...
- MyBatis-Plus分页插件IPage的使用展示------分页查询
使用了Mybatis-plus的分页插件----IPage: IPage 需要在dao层传入IPage的实现类Page对象,该对象实现了IPage IPage内部原理是基于拦截器,拦截的是方法以及方法 ...
- PageHelper——一款Mybatis的分页插件
PageHelper是mybatis一个分页插件,原理就是基于mybatis拦截器,可以用它完成分页 MyBatis提供了拦截器接口,我们可以实现自己的拦截器, 将其作为一个plugin装入到SqlS ...
最新文章
- linux php环境升级,php5.6升级到php7.1.10(Linux环境)
- Redux 学习总结 (React)
- 【IOS 开发】Objective - C 语法 之 流程控制
- 《 第一行代码 》读后感
- HDUOJ --2523
- 不同分支设置不同的远程仓库
- 用python玩转数据答案_大学mooc2020用Python玩转数据课后答案
- Android消息驱动Handler类分析
- sublime text3怎么运行python代码_Sublime Text3配置在可交互环境下运行python快捷键
- 【泛微Ecology9.0】安装\启用非标功能
- 【Lintcode】541. Zigzag Iterator II
- 【网启树莓派】无SD卡 从网络驱动树莓派| raspberry boot via pxe
- EMC EMI EMS 介绍
- 如何在线把pdf转换成word转换器
- C解析8583报文55域
- 解决问题:UnicodeDecodeError utf-8 codec cant decode byte 0xb5 in position 116:
- mysql update convert_Oracle/云MySQL/MsSQL“大迁移”真相及最优方案
- linux关闭虚拟网卡,KVM---关闭虚拟网卡virbr0的方法
- 使用data breakpoint 追踪地址寄存器被修改的问题
- 软件测试工程师简历项目经验怎么写?--1000个已成功入职的软件测试工程师简历范文模板(真实简历)
热门文章
- 对讲机服务器信号不好怎么办呢,对讲机室内信号不好怎么办?
- yahoo外链查询工具关闭后的替代
- matlab学位论文绘图美化工具_学术论文绘图matlab版
- 【techQA】安装Windows Platform SDK v7.1出现提示Some Windows SDK components require the RTM .NET Framework 4
- B.背单词 。。 KMP。模板题
- 【NLP基础理论】01 数据预处理
- Revit二次开发知识分享(十七)梁板柱开洞的使用
- 数据包络分析及模糊综合评价法各自的优点,缺点,应用范围
- 2022-12-16 mysql列存储引擎-YP-上下文记录
- 商米设备开发之-支付