MyBatisPlus实现分页和查询操作就这么简单 |
您所在的位置:网站首页 › mybatisplus联合分页查询 › MyBatisPlus实现分页和查询操作就这么简单 |
《SpringBoot整合MybatisPlus基本的增删改查,保姆级教程》在这篇文章中,我们详细介绍了分页的具体实现方法。但是,在日常的开发中还需要搜索功能的。下面让我们一起动起手来,实现一下吧。 定义查询字段定义一个类,存放需要用到的查询字段。如下: package com.didiplus.modules.sys.domain.entity.dto; import lombok.Data; /** * Author: didiplus * Email: [email protected] * CreateTime: 2022/5/7 * Desc: 检索字段 */ @Data public class DictTypeRquest { /** * 字段名称 */ private String typeName; /** * 字段编码 */ private String typeCode; /** * 是否启用 */ private String enable; } 复制代码 修改分页函数接口在分页函数接口中添加查询字段参数,如下: public interface ISysDictTypeService extends IService { /** * 分页查询 * @param pageDomain * @param dictTypeRquest * @return */ IPage page(PageDomain pageDomain, DictTypeRquest dictTypeRquest); } 复制代码 修改分页实现方法 @Service public class SysDictTypeServiceImpl extends ServiceImpl implements ISysDictTypeService { @Resource SysDictTypeMapper sysDictTypeMapper; @Override public IPage page(PageDomain pageDomain, DictTypeRquest dictTypeRquest) { IPage page = new Page(pageDomain.getPage(),pageDomain.getLimit()); LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper(); lambdaQueryWrapper.like(StrUtil.isNotEmpty(dictTypeRquest.getTypeName()),SysDictTypeEntity::getTypeName,dictTypeRquest.getTypeName()) .like(StrUtil.isNotEmpty(dictTypeRquest.getTypeCode()),SysDictTypeEntity::getTypeCode,dictTypeRquest.getTypeCode()) .eq(StrUtil.isNotEmpty(dictTypeRquest.getEnable()),SysDictTypeEntity::getEnable,dictTypeRquest.getEnable()); return sysDictTypeMapper.selectPage(page,lambdaQueryWrapper); } } 复制代码StrUtil.isNotEmpty是先判断查询参数是否不为空,不为空才会把查询条件拼接在一起,这样就实现了动态SQL啦。 修改控制层在控制层添加查询参数,代码如下: /** * 分页查询 * @param pageDomain 分页对象 * @param dictTypeRquest * @return IPage */ @ApiOperation(value = "分页查询", notes = "分页查询") @GetMapping("/page") public IPage getSysDictTypePage(PageDomain pageDomain, DictTypeRquest dictTypeRquest) { return sysDictTypeService.page(pageDomain,dictTypeRquest); } 复制代码 效果体验
更多经常的内容请关注微信公众号"攻城狮成长日记"
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |