jeecg-boot中自定义sql分页实现


1、controller实现

@RequestMapping(value = "/list", method = RequestMethod.GET)
    public Result> queryPageList(SysAnnouncement sysAnnouncement,
                                      @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
                                      @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
                                      HttpServletRequest req) {
        
        Page page = new Page(pageNo,pageSize);
        Page pageList = sysAnnouncementService.querySysCementPageByUserId(page,"","1");//通知公告消息
        log.info("查询当前页:"+pageList.getCurrent());
        log.info("查询当前页数量:"+pageList.getSize());
        log.info("查询结果数量:"+pageList.getRecords().size());
        log.info("数据总数:"+pageList.getTotal());
        
        return Result.ok(pageList);
    }

2、service实现

@Override
    public Page querySysCementPageByUserId(Page page, String userId,String msgCategory) {
         return page.setRecords(sysAnnouncementMapper.querySysCementListByUserId(page, userId, msgCategory));
    }

3、mapper接口

public interface SysAnnouncementMapper extends BaseMapper {
    List querySysCementListByUserId(Page page, String userId,String msgCategory);

}

4、xml