江门学做网站课程,网页可以做什么主题,网站建设与管理上海交通大学,济宁网站建设 企诺一 pagehelper和自定义mybatis拦截器冲突bug
1.1 问题描述
当在springboot工程#xff0c;持久层使用mybatis#xff0c;且使用pagehelper实现分页功能#xff0c;当随着业务发展#xff0c;需要自定义一个mybatis的拦截器实现sql的打印#xff0c;但是出现拦截器失效持久层使用mybatis且使用pagehelper实现分页功能当随着业务发展需要自定义一个mybatis的拦截器实现sql的打印但是出现拦截器失效无法进入interceptor方法里面。
1.自定义的拦截器 2.使用pagehelper 1.2 问题原因
发现自定义拦截器与pagehelper定义分页拦截器有冲突pagehelper分页拦截器先调用他在调用完成后没有往下调。由于mybatis的拦截器为责任链模式调用有一个传递机制。
1.3 解决办法
1.在pom文件中将pagehelper和spring集成版本改成pagehelper的原生态版本如下 !-- 分页插件 --
!-- dependency--
!-- groupIdcom.github.pagehelper/groupId--
!-- artifactIdpagehelper-spring-boot-starter/artifactId--
!-- version1.2.13/version--
!-- /dependency--dependencygroupIdcom.github.pagehelper/groupIdartifactIdpagehelper/artifactIdversion5.3.0/version/dependency
2.执行结果 可以看到进入interceptor方法中sql语句进行了输出。