org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.yb2.CustomerMapper.finByList
时间: 2023-11-28 17:46:18 浏览: 45
这个错误通常是因为MyBatis找不到指定的SQL语句引起的。可能的原因是SQL语句的ID与Mapper XML文件中定义的ID不匹配,或者Mapper XML文件没有正确加载。以下是一些可能的解决方案:
1.检查Mapper XML文件中是否存在名为"finByList"的SQL语句,如果没有,请添加它。
2.检查Mapper XML文件的命名空间是否正确,它应该与Java接口的完全限定名称相同。
3.检查Mapper XML文件是否正确加载。确保它在MyBatis配置文件中正确地配置,并且文件名和路径正确。
4.检查Java接口方法的名称是否正确拼写,并且与Mapper XML文件中定义的ID相匹配。
以下是一个可能的解决方案:
```java
// Java接口
public interface CustomerMapper {
List<Customer> findByList();
}
<!-- Mapper XML文件 -->
<mapper namespace="com.yb2.CustomerMapper">
<select id="findByList" resultType="com.yb2.Customer">
SELECT * FROM customer;
</select>
</mapper>
```
相关问题
org.apache.ibatis.binding.BindingException: Invalidbound statement (not found)
当出现org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)错误时,通常是因为MyBatis无法找到对应的SQL语句映射。
要解决这个问题,可以按照以下步骤进行排查:
1. 首先,检查一下你的Mapper.xml文件中是否存在与该错误相关的SQL语句映射。确保SQL语句的id与Mapper接口中对应方法的名称一致。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [mybatis访问报错:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)...](https://blog.csdn.net/weixin_34402408/article/details/86024348)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [【报错解决】org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)](https://blog.csdn.net/qq_50914927/article/details/127091350)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)、
org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)是MyBatis访问报错的一种情况。这个错误通常出现在执行SQL语句时找不到对应的映射语句时。
解决这个问题的步骤如下:
1. 首先,确保你的Mapper接口和XML文件中的namespace一致。你可以按住Ctrl键点击接口,看是否能跳转到对应的XML文件。如果不能跳转,说明namespace不正确。
2. 检查主启动类上是否标注了@MapperScan注解,并且注解的参数是mapper接口所在包的全包名。或者,你也可以在Mapper接口上标注@Mapper注解。但是注意,这两者不能同时使用。
通过这些步骤,你应该能够解决org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)的问题。如果问题仍然存在,请确保你的SQL语句在XML文件中被正确定义,并且没有拼写错误或者其他语法错误。如果还有其他问题,可以提供更多的错误信息或者代码片段,以便更好地帮助你解决问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [mybatis访问报错:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)...](https://blog.csdn.net/weixin_34402408/article/details/86024348)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [【报错解决】org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)](https://blog.csdn.net/qq_50914927/article/details/127091350)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]