com.ibatis.sqlmap.client.SqlMapException: There is no statement named 解决

2010-3-17 17:06:10 org.apache.catalina.core.StandardWrapperValve invoke 
严重: Servlet.service() for servlet action threw exception 
com.ibatis.sqlmap.client.SqlMapException: There is no statement named queryAllArea in this SqlMap. 
at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.getMappedStatement(SqlMapExecutorDelegate.Java:293) 
at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:606) 
at com.ibatis.sqlmap.engine.impl.SqlMapExecutorDelegate.queryForList(SqlMapExecutorDelegate.java:589) 
at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSessionImpl.java:118) 
at com.ibatis.sqlmap.engine.impl.SqlMapSessionImpl.queryForList(SqlMapSessionImpl.java:122) 
at com.ibatis.sqlmap.engine.impl.SqlMapClientImpl.queryForList(SqlMapClientImpl.java:99) 
at cn.sh.ideal.collectionAnother.dao.impl.CollectionAnotherImpl.getAllArea(CollectionAnotherImpl.java:16) 
at cn.sh.ideal.collectionAnother.action.CollectionAction.basic(CollectionAction.java:49) 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 

经常发生这种问题,其实是写代码不严谨造成的。忘记将相应的sqlMap文件名称和路径在sqlMapConfig(sql-map-config.xml)配置文件中进行配置。

主要体现在sqlmap文件很多的时候,被分成两个独立的,如:

<sqlMap namespace="promotion">
 
 <select id="query_total_num" parameterClass="map" resultClass="int">   </select>

</sqlMap>

<sqlMap>
 <typeAlias alias="sql.date"   type="java.sql.Date"/>
 <!-- 键值对象 共通 -->
 <typeAlias alias="" type="com.model.KeyValueBean"/> 

</sqlMap>

这两个文件要注意第一个的命名空间namespace和sql语句的id,第二个注意alias和type的路径,这些问题。

而在sqlMapConfig(sql-map-config.xml)配置文件中

<sqlMapConfig>
    <settings cacheModelsEnabled  = "false"
       enhancementEnabled  = "true"
       lazyLoadingEnabled  = "true" 
       errorTracingEnabled  = "true" 
       useStatementNamespaces = "true"
       maxRequests    = "512"   
       maxSessions    = "128"
       maxTransactions   = "16"/>
     <!-- clob字段处理 -->
 <typeHandler jdbcType="CLOB" javaType="java.lang.String" callback="org.springframework.orm.ibatis.support.ClobStringTypeHandler" />
  <!-- 公共   -->
 <sqlMap resource = "sqlmaps/ibatis-common.xml" />

</sqlMapConfig>

开始的参数配置,后面sqlMap中resource的注入出现的路径问题。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值