利用MP实现分页查询
文章目录
- 编辑UserController
- 编辑UserService
- MP分页API
- 编辑MP配置类
编辑UserController
编辑UserService
/*** 利用MP的方式实现分页查询* API说明: selectPage(arg1,arg2)* arg1: MP中的分页对象 固定的* arg2: MP分页中的条件构造器* @param pageResult* @return* 动态Sql: select * from user where username like "%admin%"* 条件: 如果用户传递query则拼接where条件 否则不拼接where条件*/@Overridepublic PageResult getUserList(PageResult pageResult) {//原始3个参数//1.定义MP的分页对象 arg1:页面 arg2:行数IPage iPage = new Page(pageResult.getPageNum(), pageResult.getPageSize());//2.构建查询条件构造器QueryWrapper queryWrapper = new QueryWrapper();//判断用户数据是否有效 有效 true 无效 falseboolean flag = StringUtils.hasLength(pageResult.getQuery());queryWrapper.like(flag, "username", pageResult.getQuery());//经过MP分页查询将所有的分页(total/结果/页面/条数/xxx)数据封装到iPage对象iPage = userMapper.selectPage(iPage,queryWrapper);//从分页对象中获取总记录数long total = iPage.getTotal();//从分页对象中获取分页后的结果List<User> rows = iPage.getRecords();return pageResult.setTotal(total).setRows(rows); //需要返回的是5个参数}
MP分页API
编辑MP配置类
//命名规则: 类似于配置文件 则把这个类称之为"配置类"一般Config结尾
@Configuration //标识我是一个配置类(代替之前的xml文件)
public class MybatisPlusConfig {//铺垫: xml中通过标签管理对象,将对象交给Spring容器管理. <bean>//配置类: 将方法的返回值交给Spring容器管理 @Bean注解./*** 关于MP分页规则说明* 规则: 需要设定一个拦截器.将分页的Sql进行动态的拼接.* Sql: 规则现在的Sql都支持Sql92标准!!!! 设计理念不同*/@Beanpublic MybatisPlusInterceptor mybatisPlusInterceptor() {MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.MARIADB));return interceptor;}
}
利用MP实现分页查询相关推荐
- Oracle数据库实现主键自增(利用sequence)和分页查询(利用rownum)
一.Oracle数据库实现主键自增必须通过sequence来实现 注意:sequence在每次调用nextval就会自增1 create sequence seq_user; --创建一个user表的 ...
- Mybatis Plus 入门 简单的CRUD 使用详解 条件查询 分页查询 DML操作 MP代码生成器
Mybatis Plus入门 MP是 MybatisPlus,简称MP,是一个 Mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变.MP为简化开发.提高效率而生. 它已经封装好了 ...
- mysql分页 redis_分页查询和redis
问题 我在做论坛的是时候遇到了如下的问题.论坛里可以有很多的主题topic,每个topic对应到很多回复reply.现在要查询某个topic下按照replyTime升序排列的第pageNo页的repl ...
- javaweb分页查询oracle,JavaWeb项目 利用Oracle数据库实现分页查看细讲
一.了解数据库指令 Oracle数据库相对于MySQL数据库来说,要实现分页查看,Oracle中没有像MySQL里的limit命令,使用的Oracle语句也比较复杂 select * from (se ...
- 利用查询条件对象,在Asp.net Web API中实现对业务数据的分页查询处理
在Asp.net Web API中,对业务数据的分页查询处理是一个非常常见的接口,我们需要在查询条件对象中,定义好相应业务的查询参数,排序信息,请求记录数和每页大小信息等内容,根据这些查询信息,我们在 ...
- 分页查询——山穷水复疑无路,柳暗花明又一村
前言 我们一般利用Mybatis-plus的getPage方法可以轻易获取到分页查询的数据以及**< 分页page对象** 但是现在,我们要做的是对数据库的两个表进行查询并将结果保存在map集合 ...
- oracle数据库如何写翻页_ORACLE数据库分页查询/翻页 最佳实践
ORACLE数据库分页查询/翻页 最佳实践 一.示例数据: Select Count(*) From dba_objects ; ----------------------------------- ...
- ORCALE数据库分页查询
ORCALE数据库分页查询 ORCALE数据库实现分页查询可以使用row_number()函数或者使用rownum 虚列两种方法. 第一种:利用分析函数row_number() 方法 select * ...
- MongoDB 分页查询的方法及性能
这篇文章着重的讲讲MongoDB的分页查询 传统的SQL分页 传统的sql分页,所有的方案几乎是绕不开 row_number的,对于需要各种排序,复杂查询的场景,row_number就是杀手锏.另外, ...
最新文章
- 【POJ】2377 Bad Cowtractors(最大生成树)
- 日志切割清理工具 Log-Cutter
- Gartner:基础设施和运营领域10大技术趋势
- PyQt的QTableWidget的全面总结与归纳
- 信息系统项目管理师:第4章:项目整体管理与变更管理(2)
- pyqt5绘画API
- 如何设置eclipse下查看java源码
- RTTI: dynamic_cast typeid
- 面试风云录(01) - 怎样回答这两个问题?
- 小程序 | 微信小程序实现图片是上传、预览功能
- [导入]Mobile Media API概述
- linux新建两个工作组,linux添加工作组
- 回溯法 之 马周游(马跳日)问题
- C++之explicit构造函数
- 安卓系统怎么样不Root激活XPOSED框架的方法
- 葡萄城报表模板库更新:新增6个行业、50张经典报表模板
- JAVA开发常用软件总结
- 为什么会有hash冲突?
- Django--表单
- DosBox 的 DOSBOX.CONF 的详细配置说