分页问题汇总
真的是一千个人眼里有一千个哈姆雷特吗? 为什么老师每次讲分页的时候,都不一样,都不一样,都不一样,这个牢骚,我真的很想发!!!!!
文件CategoryServiceImpl 里面的 selectList 方法()
@Override public PageInfo selectList(Integer pageNum, Integer pageSize){ PageHelper.startPage(pageNum, pageSize); List<Category> list = categoryMapper.selectList(); PageInfo pageInfo = new PageInfo(list); return pageInfo; } 我就不知道 PageHelper.startPage(pageNum, pageSize); 这个代码有啥用,连与下面的代码在写法上都没有关联, 老师就这么一嘴,就带过了,将也不讲,为什么这样写? 会不会讲课? 还有就是 List<Category> list = categoryMapper.selectList(); 这个行代码明明是一下子查询了全部记录 /mappers/CategoryMapper.xml 文件里面 <select id="selectList" resultMap="BaseResultMap"> select <include refid="Base_Column_List"/> from imooc_mall_category </select> 就没有 limit 关键字,你是如何分页的???也不讲,就是一直瞎写,但是代码运行倒是正确,但是,我心里一千只“羊驼” 送给你!!! 一味的代码堆叠,原理也不讲,原理不讲也就算了, 至少讲一下为什么这样写啊!!!
正在回答
同学你好~
1.确实是这样的,分页作为开发中最常见的业务,实现的方式更是千奇百怪。有些是在前端框架进行分页处理的,有些是在Java代码中进行分页的,也有在数据库中进行分页处理的。这些处理方式对于项目的最终呈现效果来讲,都是一样的。所以每个老师的分页方式不一样也是很正常的。甚至更极端的,在同一个项目的不同功能中,分页的方式都可能是不一样的,这也算是开发的常态了。
2.PageHelper在之前的课程中有过讲解,所以此处没有再次详细说明。讲解PageHelper的课程链接为https://class.imooc.com/lesson/2898#mid=65500 ,startPage方法的讲解在课程的13分25秒左右。
3.mapper中查询的确实是所有数据,但是数据经过PageHelper之后就被分页了。如果上面第一条所说,课程中采用的就是Java代码分页方式,所以并不会在数据库中再次分页。
从同学的这个问答中可以看出,同学对于PageHelper并不是很熟悉,建议同学先回顾一下PageHelper的课程。
祝学习愉快~
- 参与学习 2020 人
- 提交作业 1249 份
- 解答问题 1202 个
2024重磅革新,超百小时内容豪华升级,加速提升高级技能与高薪就业竞争力 课程紧贴企业最新人才需求,历经7年持续迭代,帮助万名学子入行转行 从零起点到高阶实战,学习路径稳健顺滑,成就从小白到工程师高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星