记录一次MyBatis、Pagehelper查询总数的BUG

120 阅读1分钟
//首先这是正确的写法
Page<?> page = PageHelper.startPage(dto.getPageIndex(), dto.getPageSize());
//重点在于查询要单独执行
List<ManageContentAuditResDTO> result = manageMemosCommentMapper.commentList(dto);
return new PageResDTO(page.getPageNum(),page.getPageSize(), page.getTotal(), result);

//错误的写法,暂时没有去深究原因。
 Page<?> page = PageHelper.startPage(dto.getPageIndex(), dto.getPageSize());
    List<ManageContentAuditResDTO> result = manageMemosCommentMapper.commentList(dto);
    PageResDTO pageResDTO = new PageResDTO(page.getPageNum(),
            page.getPageSize(),
            page.getTotal(), manageMemosCommentMapper.commentList(dto));
    return pageResDTO
    );

//贴出 PageResDTO,
@Data
@Builder
public class PageResDTO {

  private Integer pageIndex;
  private Integer pageSize;
  private Long counts;
  private List<?> data;

  public PageResDTO(Integer pageIndex, Integer pageSize, Long counts, List<?> data) {
      this.pageIndex = pageIndex;
      this.pageSize = pageSize;
      this.counts = counts;
      this.data = data;
  }
}