mybatis分页

每月工资一万八 / 2023-08-31 / 原文

一,

1数据层

//传入Page对象,返回的是Ipage(需要配置plus)
IPage<EtcCardLogoutOrderDto> getByCondition(Page page, @Param("dto") EtcCardLogoutOrder dto);

 

2业务层

  //创建page分页对象,因为dao层需要;
 Page<EtcCardLogoutOrder> page = new Page<>(num, size);
//接受时对象是Ipage;是分页对象
  IPage<EtcCardLogoutOrderDto> condition = null;
  try {
    condition = etcCardLogoutOrderMapper.getByCondition(page, etcCardLogoutOrder);
  } catch (Exception e) {
    e.printStackTrace();
  }
 
   //如果接收方支持Ipage,可以直接返回
  //如果接收方不支持plus,可以转换成page,放置分页相关属性和records
  List<EtcCardLogoutOrderDto> records = byCondition.getRecords();
  Page<EtcCardLogoutOrderDto> page = new Page<>(dto.getPageNo(), dto.getPageSize(), byCondition.getTotal());
  page.setRecords(records);