MyBatis 报错


1. org.apache.ibatis.binding.BindingException: Type interface cn.mybatis.mapper.UserMapper is not known to the MapperRegistry.

 错误分析:注意报错中提示的:is not known to the MapperRegistry.这个表示没有这个映射地址,也就是说虽然配置文件中配置了,又能是SQL配置文件UserMapper.xml中配置错误了,也有可能namespace中编写时出了错误,

解决方法:首先看全局配置文件中是否引入了UserMapper.Xml;
再看Dao包中的类名和相应的xml文件名是否一致;
最后看xml文件中的namespace属性,是否引入了相对应的全类名。

最后发现是映射地址写错了

2. MyBatis报错BindingException: Invalid bound statement (not found)问题

org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题,即在mybatis中dao接口与mapper配置文件在做映射绑定的时候出现问题,简单说,就是接口与xml要么是找不到,要么是找到了却匹配不到。

跟着步骤检查一遍发现parameterType写错了,已改正


发现mapper配置错了(从老师的代码CV过来的,路径没改过来),如下:

 改了一下,然后还是报错,翻了几篇百度文,又改了一下mapper

 还是报这个错,翻了n篇博文,对比了m个博主的xml写法,就在我要放弃洗洗睡的时候,我心血来潮改了一下路径方式,就好了 **-(^O^)-**撒花撒花

 3. test报错 

解决方案:在pom.xml中加入以下代码:

<plugin>
    <groupId>org.apache.maven.pluginsgroupId>
    <artifactId>maven-surefire-pluginartifactId>
    <version>2.22.2version>
    <configuration>
        <skipTests>trueskipTests>
    configuration>
plugin>

4. SQL绿色背景  xml文件无法解析sql语句

解决:连上数据库,问题解决!

若连接上数据库也无法在xml识别字段

        在idea中,alt+enter是万能的,按出此键的时候,出现一个SQL Resolution Scopes的作用范围,填上相应的信息