错误信息
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.gupaoedu.user.dal.persistence.UserMapper.getUserByUserName
错误原因
出现该错误的原因是,UserMapper.java代理接口没有和UserMapper.xml对应上。
图示:
由上图可知:
可以看到我的persistence
包下面明明有UserMapper.java
和UserMapper.xml
两个文件的,然而target
下输出的只有UserMapper.java
,这说明UserMapper.xml
并没有被运行。
原因:是idea自动过滤掉了src/main/java下的配置文件,因为一般配置文件都是放在src/main/resource下的。
解决方案:
方案一:
在
src/main/resources
下创建和UserMapper.java
同样的包路径,将UserMapper.xml
放入其中:
方案二:
修改
pom.xml
文件
<builder>
<resources>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</builder>