是否有可能从MyBatis MapperProxy获取对象?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了是否有可能从MyBatis MapperProxy获取对象?相关的知识,希望对你有一定的参考价值。

如果MyBatis Mapper方法被调用多次,我想与Mockito进行间谍活动,但是当我得到它时,我无法做到这一点

org.apache.ibatis.binding.MapperProxy

而不是我的mapper实现。是否有可能从此代理服务器获取对象?或者是否有任何其他解决方案可以通过Mapper方法与Mockito进行间谍活动?

MyBatis版本:3.4.1

Mockito版本:1.9.5

春季版:3.2.8.RELEASE

答案

要从MyBatis获取对象MapperProxy是不可能的,至少我没有找到任何方法来获取这样的对象,但是可以使用注释@SpyBean和mockito内联来监视MyBatis Mapper:

<dependency>
    <groupId>org.mockito</groupId>
    <artifactId>mockito-inline</artifactId>
    <version>${mockito.version}</version>
    <scope>test</scope>
</dependency>

以上是关于是否有可能从MyBatis MapperProxy获取对象?的主要内容,如果未能解决你的问题,请参考以下文章

MyBatis框架中Mapper映射配置的使用及原理解析 MapperProxy,MapperProxyFactory

Mybatis-Plus BaseMapper自动生成SQL及MapperProxy

从源码角度剖析 Spring 如何管理 mybatis 事务的

mybatis源码探究(-)MapperProxyFactory&MapperProxy

Mybatis插件和通用Mapper使用

MyBatis 3源码解析