解释PageInfo<Article>
时间: 2023-07-08 07:19:05 浏览: 104
PageInfo<Article>是一个泛型类,用于表示分页的信息。其中,Article是分页数据的类型,表示文章。
具体而言,PageInfo<Article>包含以下属性:
- pageNum:当前页码
- pageSize:每页数据条数
- size:当前页实际数据条数
- startRow:当前页第一条数据在数据库中的行号
- endRow:当前页最后一条数据在数据库中的行号
- total:总记录数
- pages:总页数
- list:当前页的数据列表
- prePage:前一页页码
- nextPage:后一页页码
- isFirstPage:是否为第一页
- isLastPage:是否为最后一页
- hasPreviousPage:是否有前一页
- hasNextPage:是否有后一页
- navigatePages:导航页码数
- navigatepageNums:所有导航页号
通过PageInfo<Article>,可以方便地获取分页相关的信息,如当前页码、总页数、当前页的数据列表等。这样可以更加方便地实现分页查询功能。
相关问题
PageInfo<>
PageInfo<>是一个用于分页的工具类。它可以帮助我们对数据进行分页,只需要传入需要的页数和总条数即可。通过PageInfo,我们可以获取指定页数的数据以及总条数。在使用SpringBoot查询数据时,我们可以通过PageHelper工具类和PageInfo类来实现分页功能。首先,在pom.xml文件中导入相关的依赖,然后通过PageHelper.startPage方法设置需要获取的页数和每页的数据条数。最后,使用PageInfo类来解析分页结果,通过getList方法获取指定页数的数据,通过getTotal方法获取数据的总条数。同时,需要注意在controller中调用startPage方法之前需要导入PageHelper的插件。在页面中使用PageInfo类的属性来展示分页的数据。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [java中PageInfo类的作用及用法](https://blog.csdn.net/weixin_51375107/article/details/115469276)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [PageInfo介绍及使用](https://blog.csdn.net/NMdemon/article/details/121893038)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
@Override public Result list(Article article) { if(article == null){ article = new Article(); } PageHelper.startPage(article.getPage() == null ? 0 : article.getPage(), article.getLimit() == null ? 10 : article.getLimit()); article.setIsDelete(false); List<Article> list = articleMapper.list(article); for (Article d:list) { //评论数量 d.setMomentNumber(momentCommentService.getCountByArticleId(d.getId())); //收藏数量 d.setCollectNumber(collectService.getCountByMomentId(d.getId())); d.setMomentCommentList(momentCommentService.selectByMomentId(d.getId())); } PageInfo pageInfo = new PageInfo(list); return ResultGenerator.genSuccessResult(pageInfo); }
这段代码是一个方法,用于分页查询文章列表,并且返回一个包含了所有符合条件的文章的PageInfo。具体实现如下:
首先,对传入的Article对象进行非空判断,如果为null则创建一个新的Article对象。接着,使用PageHelper分页插件来处理分页参数,如果没有传入分页参数,则默认从第0页开始,每页显示10条数据。然后,设置Article对象的isDelete属性为false,以排除已删除的文章。接着,调用articleMapper的list方法查询符合条件的文章列表,并将其存储到一个List中。
接下来,遍历所有的文章,为每篇文章设置评论数量、收藏数量以及评论列表。具体实现是通过调用momentCommentService和collectService的getCountByArticleId和getCountByMomentId方法获取评论数和收藏数,然后将其分别设置到相应的文章对象的momentNumber和collectNumber属性上。同时,调用momentCommentService的selectByMomentId方法获取该文章的评论列表,并将其设置到相应的文章对象的momentCommentList属性上。
最后,使用PageInfo将查询到的所有文章列表封装成一个PageInfo对象,并将其作为参数传入ResultGenerator的genSuccessResult方法中,以生成一个成功的操作结果。
阅读全文