getProductList为什么这么写?

来源:8-4 后台商品列表动态分页功能开发

北极猫_

2018-03-18

我看了下源码,setList和构造方法的作用似乎是一样的,那么这两句

PageInfo pageResult = new PageInfo(products);
pageResult.setList(productListVoList);

为什么不这么写:

PageInfo pageResult = new PageInfo(productListVoList);


写回答

2回答

Geely

2018-03-18

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


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


1
1
北极猫_
非常感谢!也就是用productList查分页数据, 反馈vo形式的结果
2018-03-19
共1条回复

about_blank

2018-03-18

PageInfo 需要添加一个 参数只有productListVoList的构造函数

0
0

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

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

9476 学习 · 8804 问题

查看课程