org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
在 mybatis 中 dao 接口与 mapper 配置文件在做映射绑定的时候呈现问题,简略说,就是接口与 xml 要么是找不到,要么是找到了却匹配不到。
Mapper 接口开发须要遵循以下标准:
- Mapper.xml 文件中的 namespace 与 mapper 接口的类门路雷同。
- Mapper 接口办法名和 Mapper.xml 中定义的每个 statement 的 id 雷同
- Mapper 接口办法的输出参数类型和 mapper.xml 中定义的每个 sql 的 parameterType 的类型雷同
- Mapper 接口办法的输入参数类型和 mapper.xml 中定义的每个 sql 的 resultType 的类型雷同
而后我本人报出这个错,找了两天,各种对名字,最终发现了问题所在起因是 —– resources 底下 xml 和 mapper 接口的门路不同,这里我创立的包名是 com.health.mapper,它在这里不是一级一级的创立文件夹而是创立了一个 com.health.mapper 名字的一个包,看图:
正确的应该是这样的:
所以须要 com/health/mapper 这样创立