一.关于org.apache.ibatis.binding.BindingException异常分析及解决方法
BindingException 绑定异常(mybatis框架提供的异常)
详细报错信息是org.apache.ibatis.binding.BindingException: Invalid bound statement
(not found): xx.xx.xx.mapper.xxMapper.xx
二.报错信息上显示说找不到accountMapper文件,但是项目启动是没有问题的,只有在请求发送到服务器并且调用mapper接口查询数据库时才会报出这个异常.
三.解决方法
1.先查看一下自己的pom文件是否有缺失,可以在pom文件中添加以下依赖
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
2.重新编译一下,如果发请求还是报同样的错,这时我们需要去检查一下编译的targer文件中有几个mapper文件
如果只有一个mapper文件的的话,说明编译的时候mapper映射没有对应上,
在启动类上加上包扫描路径
3.检查自己的mapper文件是否编写正确 xml文件中SQL的ID要对应接口的方法名,XML文件的namespeacer要对应mapper接口的相对路径
如果你的mapper.xml文件是写在resource中,xml文件的路径需要与接口的全路径一致,并且xml文件名要与接口文件名一致,resource文件中创建文件夹的路径是用/分层,不是用.分层,但是创建出来的文件夹看起来是一样的
上面的mapper是com/triinity/user/mapper 这个写法是正确的
下面的com.triinity.user.mapper创建出来的,这个写法是错误的,但是两者是看不出来有什么区别,需要额外注意