zoukankan      html  css  js  c++  java
  • ibatis的there is no statement named xxx in this SqlMap

    报错情况如下:
    com.ibatis.sqlmap.client.SqlMapException: There is no statement named Control.insert-control in this SqlMap. 
                   at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.getMappedStatement(SqlMapExecutorDelegate.java:231)
                   at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.insert(SqlMapExecutorDelegate.java:367) 
                   at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.insert(SqlMapSessionImpl.java:82) 
                   at com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.insert(SqlMapClientImpl.java:58) 
    原因大概有三种情况:

    1. 你的sqlmap 文件中确实没有xxx这个statement ,很有可能某个字母写错了。

    2. 实体映射文件未加入到sqlMap-Config.xml文件中。 
      原因是:框架只读取sqlMap-Config.xml文件,对新建的sqlMap引入文件即使注入bean也不予理睬。将引入文件加入sqlMap-Config.xml就可以解决问题。 
      把用到xml文件加到sqlMap-Config.xml中引入就可以了 

    2. sqlmap文件配置定义了使用namespace属性,useStatementNamespaces="true",此时在本文件中引用别的statement,就需要这样写:(你的namespace).(定义的statement 的id),如果把namespace属性漏了,就被报此异常。

  • 相关阅读:
    明星球队的傲慢
    VS2010测试方面的文章重点
    项目管理有感
    团队从小到大,再到体验团队
    css实现文字渐变
    echarts坐标轴文字过长省略
    mustache+mock
    你有选择的权利
    呵呵,初学者小编
    Centos7升级到OpenSSH_8.8p1、OpenSSL 1.1.1l版本
  • 原文地址:https://www.cnblogs.com/longshiyVip/p/4810885.html
Copyright © 2011-2022 走看看