pom文件中
pagehelper依赖项:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper</artifactId>
<version>5.2.0</version>
</dependency>
mybatis依赖项:
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.7</version>
</dependency>
mybatis配置文件:
<plugin interceptor="com.github.pagehelper.PageInterceptor">
<!-- config params as the following -->
<property name="param1" value="value1"/>
</plugin>
下面是java代码:
@Test
public void testSelectStudentAllByPage() {
SqlSession sqlSession = MybatisUtils.getSqlSession();
StudentDao dao = sqlSession.getMapper(StudentDao.class);
PageHelper.startPage(2,2);
List<Student> studentList = dao.selectStudentAllByPage();
for (Student stu:studentList){
System.out.println(stu);
}
}
理论上讲应该分两行输出(库里一共有七行数据)
下面是代码运行结果:
Logging initialized using 'class org.apache.ibatis.logging.stdout.StdOutImpl' adapter.
PooledDataSource forcefully closed/removed all connections.
PooledDataSource forcefully closed/removed all connections.
PooledDataSource forcefully closed/removed all connections.
PooledDataSource forcefully closed/removed all connections.
Opening JDBC Connection
Created connection 2072724423.
==> Preparing: select * from student order by id
==> Parameters:
<== Columns: id, name, email, age
<== Row: 1001, 张三, zhangsan@qq.com, 20
<== Row: 1002, 李四, lisi@163.com, 24
<== Row: 1003, 王五, wangwu@126.com, 30
<== Row: 1004, 张飞, zhangfei@163.com, 22
<== Row: 1005, 刘备, liubei@163.com, 21
<== Row: 1006, 李白, libai@qq.com, 21
<== Row: 1007, 李商隐, lishangyin@163.com, 23
<== Total: 7
Student{id=1001, name='张三', email='zhangsan@qq.com', age=20}
Student{id=1002, name='李四', email='lisi@163.com', age=24}
Student{id=1003, name='王五', email='wangwu@126.com', age=30}
Student{id=1004, name='张飞', email='zhangfei@163.com', age=22}
Student{id=1005, name='刘备', email='liubei@163.com', age=21}
Student{id=1006, name='李白', email='libai@qq.com', age=21}
Student{id=1007, name='李商隐', email='lishangyin@163.com', age=23}
sql语句里面根本就没有添加上limit,我自己手动添加limit是可以正常两行输出的。
看了很多解决方法,一种可能是mybatis和pagehelper版本不匹配,但这俩都是我从github上下载到的最新版本。另一种可能貌似涉及到了pagehelper的底层机制,好像是什么拦截没成功?但这种我又搞不懂,求大佬帮忙
检查一下版本。pagehelper 有maven和非maven版本。
楼主远程吧。发个向日葵给我。。
建议你这个查询别用框架自带的。手写一个xml文件,自己写个sql试试。我感觉就是底层有冲突
缺配置吧
在springboot项目中要使用这个依赖 <!--pagehelper 分页插件的使用--> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId> <version>1.2.5</version> </dependency>
PageInfo<Student> pageInfos = null;
PageHelper.startPage(page, size);
pageInfos = new PageInfo<Student>((List<Student>) list);
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632