Mybatis Plus 查询分页

接上一篇springCloud的尾。我们这里讲mybatis plus里的分页。

第一种情况,多表关联查询且需要分页。分页依然是使用mybatis plus分页,我们需要做的是去改变Page的结果集。所以我们在service实现类里改变结果集就可以,至于SQL就自定义就可以了,自定义SQL如何写这里不说了。相信用过mybatis的都会写。代码贴一下给大家看看。

controller层方法,入参记得带Page ,带入service实现类,因为我们需要在service实现类里做结果集封装。

public ResultVo queryMyItems(HttpServletRequest request,Userinfo user ,Page page) throws Exception{
        ResultVo result = new ResultVo();
        result.setError_no(ResultVo.ErrorCode.SUCCESS);
        result.setError_info(ResultVo.ErrorMessage.SUCCESS);
        try{

            /**入参自己校验**/

            Page<Map> mapPage = new Page<>(page.getCurrent(),page.getSize());
            Map requestParam = new HashMap<>();
            Page<Map> myItems= iUserinfoService.queryMyItems(mapPage,requestParam);
            result.setResults(myItems);

        }catch (Exception e){
            result.setError_no(ResultVo.ErrorCode.FAILURE);
            result.setError_info(ResultVo.ErrorMessage.FAILURE);
            logger.error("调用接口" + request.getRequestURI() + "出现异常,接口入参:"+ RequestParamsToMapUtils.getParameterStringMap(request)
                    +"错误信息"+ e.toString());
        }

        return result;
    }

接下来就是service实现类了,这里我们进行结果集封装,注意返回参数是Page对象。

public Page<Map> queryMyItems(Page<Map> mapPage, Map requestParam) {
        List<Map> myItems = baseMapper.queryMyItems(mapPage,requestParam);
        mapPage.setRecords(myItems);
        return mapPage;
    }

这就可以了。自定义的SQL我就不写了。

第二种情况就是我们只需要多表关联,那我们就自定SQL的写法就可以了。不用带入分页参数。

依旧附上源码地址源码地址

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值