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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)相关的知识,希望对你有一定的参考价值。

ssh整合版

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">  
    <property name="dataSource" ref="dataSource" />  
    <property name="mappingResources">  
        <list>  
            <value>com/bean/User.hbm.xml</value>  
        </list>  
    </property>  
    <property name="hibernateProperties">  
        <props>  
            <prop key="hibernate.dialect">org.hibernate.dialect.mysql5InnoDBDialect</prop>  
            <prop key="hibernate.show_sql">true</prop>  
            <prop key="hibernate.hbm2ddl.auto">update</prop>  
            <prop key="hibernate.format_sql">true</prop>  
        </props>  
    </property>  
</bean>  

修改bean class

其中,class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"引起了我的注意,
由于我用的是Spring4,,但是这里却出现3,于是修改成class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"

SSM整合版

环境是 jdk1.8 tomcat8 spring4

  • 项目重命名但 pom.xml 标题部分未修改
  • 是没有在pom.xml配置build包含 xml,导致target目录下没有userMapper.xml
  • 还有一种情况是mybatis配置文件里面的mapper扫描路径配置不对

虽然mapper.xml文件已经copy到class目录下了,但是mybatis并没有去加载,验证办法就是将mapper.xml中的dao或者entity类名随便改成不存在的名称,一般这时候是不报错的.就是mybatis没有加载mapper文件.

解决办法是去看看mybatis配置里面的

property name="mapperLocations"
       value="classpath*:com/******/mappers/*Mapper.xml"></property>

是否是正确的路径


我也遇到了这个问题,只是独立用Mybatis,不是spring+mybatis,是注册文件顺序有问题

代码没有任何问题,包括namespace,及java代码全部正确

解决方法是

先注册所有sqlmap映射文件

后注册所有dao接口Mapper文件

例如

   <mappers>  
        <mapper resource="qh/userreg/UserReg.sqlmap.xml"/>      
        <mapper class="qh.userreg.IUserRegMapper"/>  
    </mappers>  
</configuration> 



以上是关于org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)的主要内容,如果未能解决你的问题,请参考以下文章

org.apache.ibatis.binding.BindingException原因汇总

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

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

org.apache.ibatis.binding.BindingException原因汇总

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

org.apache.ibatis.binding.BindingException导致的原因