栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

springboot+MyBatis实现分页

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

springboot+MyBatis实现分页

前言

在web开发中 我们会经常遇到数据量太大的情况 前端一次性展示不完全,对此 我们一般是使用分页来解决这样的问题。分页就是值传给前端的数据只是一部分 这一部分的数据用来展示 其他的数据以页码的形式来放在下面。分页也有两种思路 第一种是从数据库里面查的时候就分好页。直接传给前端就好了 第二种就是使用分页插件 查询就全查出来,但是后续使用插件来进行分页。

第一种

这个上学期使用servlet的时候就用过了 具体的思路就是上面说的
本文主要介绍第二种分页的方法。

第二种 使用pagehelper插件

首先导入依赖

            
                com.github.pagehelper
                pagehelper-spring-boot-starter
                1.1.1
            

介绍一下这个插件的原理 大概就是 当你从数据库里面获取这个分页的内容的时候 这个插件就会更具你设置的值 页面的大小 和页面数目 来自动的加入sql语句 这里有一个坑;

假如是这个sql语句 这个后面千万不能加; 因为你只要加了;代表的是这个sql语句已经结束了 所以你查询的时候你给pagehelper设置的属性所生成的sql语句也不能加入到这个后面去。就汇报一些奇奇怪怪的错误。
其次就是碰到的第二个坑 当我从数据库里面查找数据的时候 发现找到的数据有一些变成了Null这 我首先一直以为是由于我使用了resulttype的原因 但是想了一下发现这个和resultmap没什么区别 只是说resultmap能更加确切的得到列的属性。然后利用单元测试 我测试了user表,发现user表里面的东西能被查出来,这表示sql语句是没问题的 出问题的只能是这个表 。我又想表的问题能在哪里呢?只能是属性和表的名字 如果说是string的问题的话 那么user表里面的string为什么能被查出来呢??所以只能是表的名字。我突然想到表的名字要和对象的属性的名字一致 只能是大小不一样。 所以最后成功找到问题的所在。原来是表的名字和对象的名字不一致导致得到的值没办法赋给对象里面确切的值。


当你查询出来的时候得到的是page类型的对象 通过tostring看到里面知识一个list加上设置的一些属性 实质上还是一个list。 最后是controller层 这里会把这个查找到的page对象进行封装 设置一些属性封装好然后再送给前端。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/673312.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号