关于org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)

在学习mybatis整合SpringMvc和Springboot时遇到的错误,这个错误经常遇到。于是记下来。

总结了下自己遇到时的原因

一。  dao/mapper接口名和dao/mapper.xml的名字不对应,推荐复制。

二。  dao/mapper.xml中的sql标签中的id没和dao/mapper接口中的方法对应,推荐复制。

三。  mapper.xml中的namespace包名不对,检查一下。

四。  也是这次的原因,不太容易想到。由于偷懒复制了上个工程的application配置文件,里面的mybatis别名设置用的还是上一个...复制时注意。

//application.yml
mybatis:
type-aliases-package: com.misaki.shiro.pojo
mapper-locations: classpath:mybaits/mapper/*.xml

如果mapper.mxl没放在resources目录下,而是在java的mapper下,则需要在pom.xml中插入

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

 

posted @ 2020-07-21 11:35  不射箭  阅读(51)  评论(0)    收藏  举报