首页 > 其他分享 >MP实现分页条件查询

MP实现分页条件查询

时间:2024-07-02 21:11:06浏览次数:19  
标签:dto 分页 paginationInterceptor 查询 dishIPage MP new public page

  1.  
  2. public class DishController {
        @Autowired
        private DishService dishService;
    ​
        @GetMapping("/page")
        public Result<PageResult> page(DishPageQueryDTO dto) {
            PageResult page = dishService.page(dto);
            return Result.success(page);
        }
       }
  3. @Service
    public class DishServiceImpl implements DishService {
        @Autowired
        private DishMapper dishMapper;
    ​
        @Override
        public PageResult page(DishPageQueryDTO dto) {
            LambdaQueryWrapper<Dish> lambdaQueryWrapper = new LambdaQueryWrapper<>();
            lambdaQueryWrapper.like(!StringUtils.isBlank(dto.getName()),Dish::getName, dto.getName())
                    .eq(!Objects.isNull(dto.getCategoryId()),Dish::getCategoryId, dto.getCategoryId()); // 添加了类别ID的查询条件
            IPage<Dish> dishIPage = new Page<>(dto.getPage(), dto.getPageSize());
            dishIPage = dishMapper.selectPage(dishIPage, lambdaQueryWrapper); // 使用 lambdaQueryWrapper 而不是 null
    ​
            List<DishVO> dishVOS = BeanUtil.copyToList(dishIPage.getRecords(), DishVO.class);
    ​
            return PageResult.builder().records(dishVOS).total(dishIPage.getTotal()).build();
        }
      }
  4.  

    public interface DishMapper extends BaseMapper<Dish> {
    }
  5. 配置类

    @Configuration
    public class MybatisPlusConfig {
        @Bean
        public PaginationInterceptor mybatisPlusInterceptor() {
            PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
            // 设置请求的页面大于最大页后操作, true调回到首页,false 继续请求  默认false
            // paginationInterceptor.setOverflow(false);
            // 设置最大单页限制数量,默认 500 条,-1 不受限制
            paginationInterceptor.setLimit(1000);
            // 开启 count 的 join 优化,只针对部分 left join
            paginationInterceptor.setCountSqlParser(new JsqlParserCountOptimize(true));
            return paginationInterceptor;
        }
    }

标签:dto,分页,paginationInterceptor,查询,dishIPage,MP,new,public,page
From: https://www.cnblogs.com/dragon-proud-sky/p/18280538

相关文章

  • Spring Boot 中 PGSQL 判断打卡点是否经过轨迹优化代码,循环查询物理表修改生成临时表,
    记录一下一个业务问题,流程是这样的,我现在有一个定时任务,5分钟执行一次,更新车辆打卡的情况。现在有20俩车,每辆车都分配了路线,每条路线都有打卡点,每个打卡点分配了不同的时间段,也就是说,一条路线可能有几百个打卡点,这几百个打卡点中每一个都分配了时间段,有可能是1个时间段,比如8......
  • 查询科目余额-带FSG行集
    SELECTGCC.SEGMENT3,(selectffv.DESCRIPTIONfromFND_FLEX_VALUES_VLffvwhereffv.FLEX_VALUE_SET_ID='&科目值集ID'andffv.FLEX_VALUE=gcc.segment3)acc_des,GB.BEGIN_BALANCE_DR-GB.BEGIN_BALANCE_C......
  • RTMP协议
       与RTSP不同,RTSP(Real-TimeStreamingProtocol)是一个控制协议,负责控制媒体流的传输,但不传输媒体数据本身。RTSP可以通过TCP或UDP传输RTP包来传输音视频数据。             RTMP(Real-TimeMessagingProtocol)是一个综合性的协议,不仅可以传......
  • Advanced Data Analytics Using Python_ With Machine Learning, Deep Learning and N
    本书提供了使用Python进行高级数据分析的方法,涵盖了机器学习、深度学习和自然语言处理的应用实例。书中详细讲解了如何在不同的数据库环境中进行数据提取、转换和加载(ETL),并探讨了监督学习、无监督学习、深度学习、时间序列分析以及大规模数据分析的相关内容。目录简介为......
  • 58.分页器
    分页器【1】模板classPagination(object):def__init__(self,current_page,all_count,per_page_num=2,pager_count=11):"""封装分页相关数据:paramcurrent_page:当前页:paramall_count:数据库中的数据总条数:par......
  • 电赛开发板之c2000 f28069m开发环境配置与报错because its compiler definition is no
    1.CSS报错Seedetailsbelow...  Error:Importfailedforproject'Example_2806xECap_Capture_Pwm'becauseitscompilerdefinitionisnotavailable.PleaseinstalltheC2000v22.6compilerbeforeimportingthisproject-click'View>CCSA......
  • java操作hbase查询数据 java操作hbase查询数据库
    java操作hbase查询数据java操作hbase查询数据库HBasejavaAPI访问HBase数据库登录后复制packagecom.hunan.hbase_options;importorg.apache.hadoop.conf.Configuration;importorg.apache.hadoop.hbase.;importorg.apache.hadoop.hbase.client.;importorg.apache.had......
  • 【PWM太阳能控制器调光方案】5V升24V 6A大电流无频闪PWM调光升压恒流LED驱动芯片FP720
    目前led灯带产品应用越来越广泛,在节能环保的社会快速发展驱动下,太阳能照明产品越来越多。但是现有技术中,有些空间狭小,又长又窄的环境空间不适用于现有的太阳能灯使用,现有技术中的太阳能灯照明效果不佳且不能够实现智能化照明;因此迫切地需要重新设计一款新的太阳能led灯带以......
  • 查询 dynamic crm 中,TypeCode 对应的实体名称
    查询语句:selectEntityId,Name,ObjectTypeCode,OriginalLocalizedNamefromEntityVieworderbyObjectTypeCode常用列表:NameObjectTypeCodeAccount1Contact2Opportunity3Lead4Annotation5BusinessUnitMap6Ow......
  • ACCOMPLISH vs COMPLETE coca 搭配
       WORD 1: ACCOMPLISH  WORDW1W2  FEATS692  FEAT44320  GOALS1113113  DEEDS334  PURPOSES11916  THINGS1204163  OBJECTIVES28742  LOT37859  ANYTHING934155  SOMETHING1053211......