SpringBoot、mysql配置PageHelper插件

一:https://blog.csdn.net/h985161183/article/details/79800737

主要异常:org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.github.pagehelper.autoconfigure.PageHelperAutoConfiguration': 

pageHelper.jar版本与MyBatis版本不兼容;换用高版本jar包

我用的SpringBoot版本:

<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.0.4.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>

pageHelper版本:

<dependency>
<groupId>com.github.pagehelper</groupId>
<artifactId>pagehelper-spring-boot-starter</artifactId>
<version>1.2.5</version>
</dependency>

二:https://blog.csdn.net/s592652578/article/details/78179998

主要异常信息:com.github.pagehelper.PageHelper cannot be cast to org.apache.ibatis.plugin.Interceptor
我的配置

<plugins>
  <plugin interceptor="com.github.pagehelper.PageHelper">
  <!-- 设置数据库类型 Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库-->
  <property name="dialect" value="mysql"/>
  </plugin>
</plugins>

解决:配置中实现的是com.github.pagehelper.PageHelper这个接口,而错误报的是这个借口在强转成org.apache.ibatis.plugin.Interceptor这个借口的时候报错了,而我使用的是pageheper5.1.2版本,上网一查,自4.0.0版本以后就不再实现这个接口了,转而实现这个接口:org.apache.ibatis.plugin.Interceptor,因此,修改配置如下:

<plugins>
  <plugin interceptor="com.github.pagehelper.PageInterceptor">
  <!-- 设置数据库类型 Oracle,Mysql,MariaDB,SQLite,Hsqldb,PostgreSQL六种数据库--> 
  <property name="dialect" value="mysql"/>
  </plugin>
</plugins>

又报异常:主要是mysql类不识别,最终原因还是因为版本的问题,自4.0.0以后的版本已经可以自动识别数据库了,所以不需要我们再去指定数据库,所以,修改配置:
<plugins>
  <plugin interceptor="com.github.pagehelper.PageInterceptor">
  </plugin>
</plugins>
三:之后的异常:java.lang.RuntimeException: 在系统中发现了多个分页插件,请检查系统配置!

删除mybatis-config.xml文件中的pagehelper就好了
<!--<plugins>-->
<!--&lt;!&ndash; com.github.pagehelper为PageHelper类所在包名 &ndash;&gt;-->
<!--<plugin interceptor="com.github.pagehelper.PageInterceptor">-->
<!--</plugin>-->
<!--</plugins>-->

https://blog.csdn.net/boke7265/article/details/80863010

总结:SpringBoot、mysql配置PageHelper插件,只需要使用 2.0.4.RELEASE版本SpringBoot引入1.2.5版本pageHelper即可。

转载于:https://www.cnblogs.com/zhangliwei/p/9575867.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/250771.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

字符串的拆分以及分隔符所在不同位置的删除

try { //根据imComuserGroupMng获取这个数据库的所有ImComuserGroup数据 List<ImComuserGroup> list imComuserGroupMng.findAllComuserGroup(); //便利实体数据list为数据的集合 …

算法 --- 递归生成括号

问题描述 思路: 1.首先生成n个括号 2.左括号数量(记为l)不超过n 3.右括号数量(记为r)不超过n,且优先生成左括号(即 l < r) 4.需要设计一个递归式h(str,l,r) // 一开始,str , l 0, r 0 // 第一步进去,添加左括号, str(, l 1, r 0 // 然后因为 l < n . r < l 所以…

使用 TypeScript 改造构建工具及测试用例

最近的一段时间一直在搞TypeScript&#xff0c;一个巨硬出品、赋予JavaScript语言静态类型和编译的语言。 第一个完全使用TypeScript重构的纯Node.js项目已经上线并稳定运行了。 第二个前后端的项目目前也在重构中&#xff0c;关于前端基于webpack的TypeScript套路之前也有提到…

JavaScript 验证表单不为空和获取select下拉列表的值和文本

1.验证表单不为空 var hasform { "Name": "名字", "Id_card": "身份证", "PaySalary": "月工资", "CardCode": "账号", "Fk_Subjectf_Code": &quo…

javascript --- 变量污染全局作用域问题解决方案

日常写法 // 假设你写了几个关于某个某块的函数 function foo1 () {...} function foo2 () {...} function foo3 () {...}出现问题:假设你的团队中也有一个人定义了foo1函数,那么你写的将会覆盖以前的函数,或者会被覆盖掉.若前面使用let声明了foo1变量.将会报错. 解决污染 你…

solr7.4 安装与使用

1.solr7环境要求 solr7需要java8环境&#xff0c;且需要在环境变量中添加 JAVA_HOME变量。 2.solr 安装 下载地址 https://lucene.apache.org/solr/mirrors-solr-latest-redir.html 我下载为7.4版本 在solr5以前solr的启动都有tomcat作为容器&#xff0c;但是从solr5以后solr内…

初入HTML5

在最开始接触HTML5的时候&#xff0c;你会遇到的大多是一些常见常用的属性以及属性值。它们分类广、品种杂且使用率高。到css各种样式的时候&#xff0c;你会接触到更多的东西&#xff0c;各种属性、选择器、盒子模型都是重点。那么&#xff0c;现在我们就看一下它们到底是什么…

javascript --- 让函数的实例可以链式调用

关键: 在每个函数的末尾加上 return thisthis:在javascript中表示当前的对象 栗如: 有以下函数 var fooObj {foo1: function() {console.log(1);},foo2: function() {console.log(2);},foo3: function() {console.log(3);} }// 你想通过 fooObj.foo1().foo2().foo3() // …

ReactiveCocoa基础

本文转载自最快让你上手ReactiveCocoa之基础篇&#xff0c;在此基础上稍作修改&#xff0c;欢迎交流。 有关对 ReactiveCocoa 的看法可以看一下唐巧的这篇ReactiveCocoa 讨论会 ReactiveCocoa思维导图ReactiveCocoa简介 ReactiveCocoa&#xff08;简称为RAC&#xff09;,是由Gi…

javascript --- 创建一个二维数组

想创建一个 n*n 的矩阵,并全部赋予初始值false 你可能会想到下面 let arr []; for(let i 0 ;i< n;i) {arr[i] [];for( let j 0; j< n; j){arr[i][j] false;} }稍微封装一下: function Cmatrix(n, c) {let arr [];for (let i 0; i < n; i) {arr[i] [];for (le…

配置OpenCV产生flann\logger.h(66): error C4996: ‘fopen': This function or variable may be unsafe问题

转载自&#xff1a;http://guoming.me/%E9%85%8D%E7%BD%AEopencv%E4%BA%A7%E7%94%9Fflannlogger-h66-error-c4996-fopen-this-function-or-variable-may-be-unsafe%E9%97%AE%E9%A2%98 今天使用vs2012配置OpenCV编译出现问题: 1>—— 已启动生成: 项目: Win32ForOpenCV245, 配…

android listview和simpleadapter 给itme 中的控件添加事件

simpleAdapter.setViewBinder(new SimpleAdapter.ViewBinder() { Override public boolean setViewValue(View view, Object data, String textRepresentation) {   Log.d("进入setview","进入setview");if(view instanceof Button &&am…

0 uC/OS 系统精讲索引

uC/OS-II与uC/OS-III放在一起讲&#xff0c;每个例程同时提供两个版本的源代码。 本系列教程主要涉及如下内容&#xff1a; 【原理部分】 1-操作系统简介&#xff1a;基本概念 2-目录结构与测试环境搭建&#xff1a;uC/OS-III emWin VS2015 2.1 官方文件目录结构 【*】uC/Lib …

OPENCV-1 学习笔记

灰度图&#xff1a;2维矩阵 彩色图&#xff1a;3维矩阵 ps&#xff1a;目前大部分设备都是用无符号 8 位整数&#xff08;类型为 CV_8U&#xff09;表示像素亮度 Mat类定义&#xff1a; class CV_EXPORTS Mat { public://一系列函数.../* flag 参数中包含许多关于矩阵的信息…

javascript --- repeat的用处

描述 思路: 最多重复s.length次使用String.prototype.repeat(n)方法可以将字符串重复n次 核心: while( i < len/2){if( s s.slice(0,i).repeat(len /i) ) {return ture;} }总体代码: var repeatedSubstringPattern function(s) {let i 1;let len s.length;while (i …

redis 零散知识

1、单线程 2、默认 16 个库。0~15 3、select &#xff1a;切换数据库 4、DBsize &#xff1a;查看当前数据库的数量 5、keys * &#xff1a;查看当前库的所有 key 6、keys k? &#xff1a;问号是占位符 7、FlushDB &#xff1a;清除当前库 8、FlushAll &#xff1a;清除所有库…

模型评估——定量分析预测的质量

https://blog.csdn.net/hustqb/article/details/77922031 评分参数定义模型评价规则 公共案例预定义值根据度量函数定义你的评分策略应用你自己的评分对象使用多种度量指标分类度量 从二分类到多分类多标签精确度Cohens kappa混乱矩阵分类报告汉明损失Jaccard 相似性相关系数准…

OPENCV-2 学习笔记

1、图像显示 #include<opencv2/opencv.hpp> using namespace cv; //使用命名空间 void main(){Mat srcImage imread(1.jpg);//载入图像imshow(图像标题,srcImage);//显示图像waitKey(0);//等待按键按下 } 2、图像腐蚀 #include <opencv2/opencv.hpp> #incl…

javascript --- 对象的方式体验链式调用

将功能相近的方法写入同一个对象中,是一个很好的编程习惯,便于后期的维护和前期的开发. foo1 var fooObj {foo1: function() {console.log(foo1);return this;} } fooObj.foo1();此有一个对象: fooObj它有一个方法: foo1()foo1打印了一个字符串’foo1’,然后返回了当前的执行…

oracle 数据库查询多条数据的一列值

select sum(case when hc13 then JE else 0 end), sum(case when hc14 then JE else 0 end), sum(case when hc15 then JE else 0 end), sum(case when hc16 then JE else 0 end) from 表名转载于:https://www.cnblogs.com/lkzp123456/p/8608080.html