could not find result map java.lang.string_使用mybatis查询时报“Could not find result map java.lang.Long”...

在使用mybatis做查询时,报了“Could not find result map java.lang.Long”异常错误,简单记录下。

报错信息

org.apache.ibatis.builder.IncompleteElementException: Could not find result map java.lang.Long

at org.apache.ibatis.builder.MapperBuilderAssistant.getStatementResultMaps(MapperBuilderAssistant.java:346)

at org.apache.ibatis.builder.MapperBuilderAssistant.addMappedStatement(MapperBuilderAssistant.java:290)

at org.apache.ibatis.builder.xml.XMLStatementBuilder.parseStatementNode(XMLStatementBuilder.java:109)

at org.apache.ibatis.session.Configuration.buildAllStatements(Configuration.java:775)

at org.apache.ibatis.session.Configuration.hasStatement(Configuration.java:745)

at org.apache.ibatis.session.Configuration.hasStatement(Configuration.java:740)

at org.apache.ibatis.binding.MapperMethod$SqlCommand.(MapperMethod.java:217)

at org.apache.ibatis.binding.MapperMethod.(MapperMethod.java:48)

at org.apache.ibatis.binding.MapperProxy.cachedMapperMethod(MapperProxy.java:65)

at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:58)

at com.sun.proxy.$Proxy97.registCount(Unknown Source)

主要原因

排查了一下,这里主要是因为在mapper.xml中,使用了resultMap,而resultMap主要用于将查询字段和对象的映射,而我们的sql查询结果希望是一个数值类型,这里主要是返回Long对象(也可以返回基本数据类型long)

84204e9c9ef468d30eceee3c5a7b86af.png

处理方法

将resultMap修改为resultType即可,有时候修改了对应接口的标签属性之后,仍然报错,这个时候就要排查一下是不是mapper.xml其他地方出现了同样的错误,如果出现同样的错误,就算调用的不是当前的接口,也会报错。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值