zoukankan      html  css  js  c++  java
  • 使用MyBatis分页插件PageHelper遇到的问题

    最近在学习一个项目,就是网上流传的e-shop,学到使用分页插件的时候,突然卡主了,我都跟着视频走的,出现这种问题,真的是一脸懵 X,要知道这种整合项目中出现异常,要不就是jar包冲突,要不就是配置文件哪个地方不对,这样找起来,没有头绪,简直就是折腾,最开始我的mybatis全局配置文件是这样写的:

    运行taotao-manager出现以下异常:

    后面还有一行关键描述:

    Cause: java.lang.ClassCastException: com.github.pagehelper.PageHelper cannot be cast to org.apache.ibatis.plugin.Interceptor

    意思就是说这个分页插件的Interceptor没有被实现

     看一下我的pagehelper的版本  以及com.github.pagehelper.PageHelper类

    pageHelper是如何在mybatis中工作呢,是通过mybatis的pulgin实现了Interceptor接口,从而获得要执行的sql语句实现分页技术,而我们的PageHelper5.0.0版本中的这个类,并没有出现implements Interceptor,我们再来看下pagehelper这个包下的其他类,我们发现,有个类很像我们要的,我们进去一看,果然是它:

    因此,我们修改我们的mybatis全局配置文件SqlMapConfig.xml如下:

    我们再次启动我们的项目:

    我去,这个会话工程"sqlSessionFactory"怎么又出来了,我们往后翻,发现有个关键描述:

    Error parsing SQL Mapper Configuration. Cause: com.github.pagehelper.PageException: java.lang.ClassNotFoundException: mysql

    没有发现mysql这个类,太折腾了,我也不想检查其他jar包是否版本不对了,这个后面有时间再去研究,网上说,PageHelper插件4.0.0以后的版本支持自动识别使用的数据库,可以不用配置 <property name="dialect" value="mysql"/>    这,抱着侥幸的心理,我再一次试了试:

    没问题了,项目正常跑起来了

    附录:

    使用tomcat插件运行的时候可能会出现日志打印方面的异常:

    这时候在Test测试类中加下面这行代码就可以了;

    BasicConfigurator.configure();

    其实还有一种方式,就是写入绝对路径中,这里不做研究,感兴趣的可以自行搜索

    引用博客:   http://blog.csdn.net/appleyk/article/details/77318175

  • 相关阅读:
    mysql,windows自动备份设置
    彻底搞清楚javascript中的require、import和export
    Spring Boot 打包报错Failed to execute goal org.apache.maven.plugins:mavenresourcesplugin:3.2.0
    Spring AOP 切点切面
    12.5M 30M 90M DEM免费下载!【转】
    JS 中的数组遍历方式效率比较[转]
    cesium加载CAD模型(.dwg)
    Cesium发布下一代3D Tiles规范预览
    cesium点击面高亮事件[转]
    MySQL 5.7及8.0版本数据库的root密码遗忘的解决办法
  • 原文地址:https://www.cnblogs.com/zx947240023/p/8150923.html
Copyright © 2011-2022 走看看