使用芋道源码后端结合需求分页产生的问题

        这个需求是根据系统编码和版本号获取到接口数量,并在页面上展示,首先我想到的是需要根据系统编码和版本号这两个字段进行分组求和,reqpageVO继承了PageParam所以有了分页参数,最开始我是自己写了一个方法获取到数据是一个List集合 但是就是没有分页信息,返回给前端页面上的展示就是一页,全部数据都在,我在想是不是前端接收的问题,就又去重新写了前端的代码,框架本身是这样写的

我后来写的方法并没有按照这种方式写,而是使用了对后端返回的data数据由于是list集合嘛,我就把这个集合遍历,然后一个一个的push上去了,也可以接收数据,但是就是没有分页信息,后面我想了一下,自己总想着跳出这个框架,写自己的一套方法,但是既然用了人家的东西,我觉得就要了解一下这个框架的约束,然后我把前端的代码修改回去了,去测试写好的接口,对比这个框架的作者是怎么写的,自己参照着修改着写。

        然后写了Mapper是这样的,这个Mapper我也没有按照框架的方式去写

由于我把自己之前写的代码删了,上面这张图是去gitlab找的

这样如果只是单纯的写一个SQL,这样已经实现了,但是并没有结合需求,以及使用层面。

        纠结了半天,我觉得认认真真的把这个框架的这个方法Debug走一遍看看是怎么实现的,我发现在底层其实是封装了一层BaseMapperX,这个是对BaseMapper的封装,然后返回了分页信息。但是我还是在纠结,一个是List集合,一个是封装的PageResult都是集合怎么能让PageResult里面的元素是List我自己写的元素呢。很好,兄弟们,你应该也想到了,我用了setList。把List放里面了但是还是不对劲,与我的结果再次背道而驰。我去看了baseMapper的selectPage是怎么写的。最后我恍然大悟了兄弟们,它其实是继承了Ipage这个接口,PageResult也有构造方法是可以放List和Total的正好符合前端要的数据,其实就是对Page这个对象里面带了分页参数和条件查询的数据集合,那还等什么,直接写!我用了queryWrapper来实现了模糊查询,以及分组并没有用Mapper,只是用了Mapper的selectPage,最后完美解决这个问题数据显示正常,分页正常,模糊查询也没有问题。做完这里我觉得自己的技术真的很差劲,所以我决定要记录一下自己刚入行时踩过的坑,这样后面的兄弟如果有和我遇到一样的问题,万一看到了我的记录,或许会有一些帮助,最后是完整的Controller代码

  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值