Invalid bound statement (not found)
出现此问题原因有:
1。mapper文件namespace和dao路径对应
<mapper namespace="com.ccr.dao.UserDao">
<select id="findAll" resultType="User">
select * from user_table
</select>
</mapper>
2.UserDao的方法在UserMapper.xml中没有,然后执行UserDao的方法会报此
3.UserDao的方法返回值是List,而select元素没有正确配置ResultMap,或者只配置ResultType!
4.
SqlSessionFactoryBean 并没有加载到对应的mapper xml文件,当然执行方法的时候也就找不到dao所对应的mapper,而无法执行对应的sql,查看maven target 的classes目录下也并没有mapper的xml文件出现。
原因:mapper文件并不是放在resource中,而是在java目录,maven编译的时候并没有把xml文件编译进来。
解决:在pom文件中添加resource编译
<build> <resources> <resource> <!--此处配置到java是因为mapper.xml文件在java目录--> <directory>src/main/java</directory> <includes> <include>**/*</include> </includes> <filtering>false</filtering> </resource> </resources> </build>