排查下, 项目里跟mybatis有关的就只有pagehelper了, 猜测可能是pagehelper 为了分页再发了一条算总数count的sql, 而打印sql的拦截器没有获取到count查询的完整sql...;
/**
* 在分页拦截器后加载
*/
@Autowired
PageHelperAutoConfiguration pageHelperAutoConfiguration...配置完成, 再次执行查询, sql只打印一次, 说明sql打印拦截器在分页拦截器之前被调用, 完成
但是为什么先加载的拦截器反而后执行, 网上好像没啥资料, 那就只能自己翻翻源码了.
debug看了下,...即, 在这一步, 先加载的拦截器会优先被遍历, 会优先对目标对象进行代理,
后加载的拦截器, 在原有的代理之上再进行代理, 一层包一层, 类似洋葱.
当方法被调用时, 会先执行最外层的代理方法....所以, 先加载到的拦截器, 反而是最后执行.
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。