今天在别人的代码基础上实现新需求,看到对于mybatis查询结果的判断不是很正确,如果查询结果为空就会异常,不知道大家有没有这样的疑惑:mybatis中resultType有多种返回类型,对于每种不同类型,查询结果为空时dao接口的返回值是一样的吗?接下来我就总结一下常见的几种情况。

第一种:resultType为基本类型,如string(在此暂且把string归纳为基本类型)

如果select的结果为空,则dao接口返回结果为null

第二种,resultType为基本类型,如int

后台报异常:

org.apache.ibatis.binding.BindingException: Mapper method 'com.fkit.dao.xxDao.getUserById attempted to return null from a method with a primitive return type (int).

解释:查询结果为null,试图返回null但是方法定义的返回值是int,null转为int时报错

解决办法:修改select的返回值为String

第三种 resultType为类为map ,如map、hashmap

dao层接口返回值为null

第四种 resultType 为list ,如list

dao层接口返回值为[],即空集合。

注意:此时判断查询是否为空就不能用null做判断

第五种 resultType 为类 ,如com.fkit.pojo.User

dao层接口返回值null

总结

以上所述是小编给大家介绍的mybatis中查询结果为空时不同返回类型对应返回值问题,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

java按条件查询结果为空_mybatis中查询结果为空时不同返回类型对应返回值问题...相关推荐

  1. java statement 返回类型,6.3 返回类型和返回语句 | Return type Return statement

    无返回值函数 对于返回类型是void的函数,return后不跟表达式.最后的 return; 可以没有而让程序隐式执行.在void函数中的return语句还有提前使函数退出的作用而不进行接下来的计算, ...

  2. php mysql 字段不为空_Thinkphp中查询复杂sql查询表达式,如何表达MYSQL中的某字段不为空is not null?...

    Thinkphp中查询复杂sql查询表达式,如何表达MYSQL中的某字段不为空is not null? 先上两种实现方式的实例: $querys["house_type_image" ...

  3. java判断集合为空_Java中判断集合类为空的方法

    *****需要引入Spring的核心Jar包***** 工具类: org.springframework.util.CollectionUtils 方法: public static boolean ...

  4. mysql 怎么查询慢sql语句_Mysql中 查询慢的 Sql语句的记录查找

    Mysql中 查询慢的 Sql语句的记录查找 慢查询日志 slow_query_log,是用来记录查询比较慢的sql语句,通过查询日志来查找哪条sql语句比较慢,这样可以对比较慢的sql可以进行优化. ...

  5. MySQL查询sql的关键字_sql中查询命令的关键字是什么

    sql中查询命令的关键字是什么 发布时间:2020-11-13 10:34:56 来源:亿速云 阅读:72 作者:小新 这篇文章主要介绍sql中查询命令的关键字是什么,文中介绍的非常详细,具有一定的参 ...

  6. android c 对象为空,ndk-jni中C/C++接口函数修改函数参数jobject对象成员值(数组)的有关问题...

    ndk-jni中C/C++接口函数修改函数参数jobject对象成员值(数组)的问题 现java中有个类: public class TestClass { private int nValue; p ...

  7. php如何查询数据库,如何在php中查询mysql数据库数据

    如何在php中查询mysql数据库数据 发布时间:2020-07-21 09:23:55 来源:亿速云 阅读:81 作者:Leah 本篇文章给大家分享的是有关如何在php中查询mysql数据库数据,小 ...

  8. java中集合判空_Java中的类型安全的空集合

    java中集合判空 我以前曾在Java Collections类的实用程序上进行过博客撰写,并且特别地在使用Usings Collections Methods上的博客emptyList(),empt ...

  9. mysql查询id为偶数_MySQL中查询中位数?

    导读:计算中位数可能是小学的内容,然而在数据库查询中实现却并不是一件容易的事.我们今天就来看看都有哪些方法可以实现. 注:本文所用MySQL版本无限制,所列题目均来源于LeetCode. LeetCo ...

最新文章

  1. GNU/LINUX(KaliUbuntu)安装chrome浏览器
  2. 2011年度最佳10款免费的 WordPress 主题
  3. printf sizeof c语言,你可能对 sizeof(i++) 有点误解。。。
  4. java输入正确的信息_判断用户输入的信息是否正确
  5. debian10安装mysql_ECS Debian 系统安装mysql数据库的具体操作
  6. php mysql多表关联删除_MySQL中多表删除方法
  7. 微信小程序获取用户的头像和昵称
  8. C/C++创建服务器和客户端的demo
  9. MediaCodec解码aac
  10. autojs脚本代码大全(实战演练1)
  11. matlab 正20面体,如何画正二十面体
  12. VP9编码:迄今的尝试
  13. uni-app使用i18n实现国际化/多语言配置
  14. 室内定位导航-室内地图导航-高精度地图应用场景
  15. Early stopping conditioned on metric `val_loss` which is not available
  16. fatal: unable to access ‘https://github.com/username/xx.git/‘: OpenSSL SSL_read: Connection was
  17. DFS判断回路及回路个数
  18. 使用Java SE8 Streams 处理数据,Part 2
  19. Abaqus6.14+VS2013+IVF2013安装教程
  20. 路由器可以当交换机用吗

热门文章

  1. Pytorch 加载部分预训练模型并冻结某些层
  2. UDP sendto和recvfrom使用详解
  3. H5工程师跨页面取值的几种方法
  4. oracle存储过程与函数的区别及作用,Oracle存储过程与存储函数-入门
  5. 获取 HTML5 网页设计灵感的10个网站推荐
  6. 关于ES6的Promise
  7. 前端生态混乱,AMPMIP在努力做标准化工作
  8. webpack中实现按需加载
  9. 滚动条造成页面抖动问题
  10. 《美团机器学习实践》高清PDF+思维导图+美团算法团队