关于Mybatis 的 Mapped Statements collection does not contain value for 异常 解决方案

查看堆栈信息:

at org.apache.ibatis.session.Configuration$StrictMap.get(Configuration.java:595)

at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:437)

at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:430)

at org.apache.ibatis.binding.MapperMethod.setupCommandType(MapperMethod.java:188)

at org.apache.ibatis.binding.MapperMethod.<init>(MapperMethod.java:51)

at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:24)

at $Proxy49.find(Unknown Source)

 

查看抛出异常的方法源码:

 

 方法说明:

 看不懂没关系,在该方法第一行设置断点,从新运行一次看看:

发现 key实际上是方法的名称,可以猜想到,这是通过方法名称获取方法实现,可是方法实现找不到,自然就抛出上面的:空值异常了。

知道问题所在就好办了,无非是Mapper接口和Mapper配置文件没有映射上,去检查吧~

原文地址:https://www.cnblogs.com/HassanBlog/p/3223098.html