Springboot整合MyBatis的分页插件PageHelper及出现的问题Spring boot整合MyBatis的PageHelper的步骤
1、引⼊包
maven引⼊:
<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.2</version>
</dependency>
2.在查询逻辑之前加⼊代码
PageHelper.startPage(1,5);
List<User> list = userService.findAll();
3、整合期间出现的问题
Caused by: java.lang.ClassCastException: com.github.pagehelper.PageHelper cannot be cast to
org.apache.ibatis.plugin.Interceptor
该问题出现的原因是:这个分页插件的Interceptor并没有被实现
pageHelper是如何在mybatis中⼯作呢,是通过mybatis的pulgin实现了Interceptor接⼝,从⽽获得要执⾏的sql语句实现分页技术
之前出错的配置
<plugin interceptor="com.github.pagehelper.PageHelper">
<!-- 设置数据库类型Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库 -->
<property name="dialect" value="mysql"/>
</plugin>
修改过后的配置
<plugin interceptor="com.github.pagehelper.PageInterceptor">
<!-- 设置数据库类型Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库 -->
<property name="dialect" value="mysql"/>
</plugin>
这样就实现了该接⼝
之后⼜出现了⼀个问题
分页查询插件Caused by: java.lang.ClassNotFoundException: mysql
⽹上了解到PageHelper4.0之后的插件可以⾃动识别所使⽤的数据库,这样的话可以将
<property name="dialect" value="mysql"/>
注释掉
这样就可以了
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论