pageInfo.setLIst()

来源:8-8 前台商品详情,列表,搜索,动态排序功能开发

慕容7568949

2018-03-13

http://img.mukewang.com/szimg/5aa6ac0e0001912805380075.jpg

这里的setList()是什么意思啊?没太明白

写回答

4回答

慕标1082694

2019-01-09

您可以参考:https://coding.imooc.com/learn/questiondetail/10968.html

慕标1082694的回答,分析的比较详细。


1
0

polo哦

2018-03-13

setList指的是需要返回给前端的数据列表,因为我们从数据库查询到的列表并不是最后返回到前端的数据,是经过了pojo-》vo的转换,所以需要将新的vo列表返回到前端时就需要用分页的setList()

1
2
polo哦
回复
慕容7568949
pageInfo是要根据 传进去的集合计算分页的大小和页数之类的,传最原始的集合能保证页数是正确的,而setList是用来放置最后需要展示的集合,有可能在b-》a的过程中因为代码的原因而转换失败,导致a的条数缺失
2018-03-14
共2条回复

Queen丶Star

2018-08-08

就是把listVO放到 PageInfo 对象中, 这样前端才能调用 展示分页啊。

new PageInfo(resultList)  只是利用resultList这个集合 进行分页处理。。并没有 把这个集合放进PageInfo中。

你debug就可以看出来,如果在新建pageInfo类的时候,构造方法不加通过sql语句查出来的List,那么,你的pageInfo对象就只会有一个list属性有值,其他的都是系统默认的。(即 0,null 一类的)


0
0

Geely

2018-03-17

你好,同学,首先课程中有说。pageHelper分页主要是通过 aop来实现,在执行sql之前会在sql语句中添加limit offset这两个参数。这样就完成了动态的分页。


然而我们需要用vo返回给前端。如果我们用vo里的字段,是和pojo总会有不一致的地方。例如时间的类型,又例如添加的一些枚举状态等。那么为了自动分页,我们会用dao层找到原始的pojoList,(因为pageHelper是对dao层在执行mapper的时候才会动态分页,所以我们要先执行一下mapper)然后转换成vo。那么其实这两个list的集合的分页参数是一致的。所以用了一个比较巧妙的办法。来把vo进行分页~~这样就达到了目的~


希望你能理解哈~~


0
0

从0开始 独立完成企业级Java电商网站服务端开发

前后端分离,数据库接口设计,架构设计,功能开发,上线运维

9430 学习 · 8789 问题

查看课程