SpringBoot绑定Mybatis报错org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

一般原因:
1:命名空间是否指向接口,检查xxxdao.xml文件的namespace命名
2:UserDao的方法在UserDao.xml中不存在或者写错
3:mapper的XML配置路径是否正确

以上原因都很容易找到,下面谈一个很难发现的原因。在SpringBoot框架中,绑定Mybatis,dao包或者mapper包里面的xml文件并没有编译进去,因为idea的默认配置文件都是放在src/main/resources目录下,如果想要编译src/main/java目录下的xml,可以在pom的build里配置resource。

    <build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml
                
            
        
    

XXDao文件和XX.xml文件名称不需要一模一样,只要命名空间正确即可。

然后重新启动SpringBoot

你可能感兴趣的:(java,mybatis,spring,xml,maven)