今日遇到的问题:

查询版本信息时,由于version是Integer类型,所以当前台选择版本为0时,变成了查询了所有的版本信息。

sql片段:

AND a.version = #{version}

原因:

MyBatis因自身原因默认了 Integer类型数据值等于0时 为 ""(空字符串)

解决办法:

1. 某些情况下,可以在Controller处就拦截,并向前台提示,比如:“必须输入有效数字”,不让他再往后传。

2. 将判断条件version != ''删去,不让它判断。

如:

AND a.version = #{version}

弊端:就是当有哪位仁兄真的用这个方法传了个空字符串,就无法判断。

3. 单独加上当version为0的特殊情况

如:

AND a.version = #{version}

当然,如果想默认输入为0时查询所有(类似于上述问题示例)或者是后面想转为空字符串,

可以不用改,也算是巧用"bug"。

以上就是本次介绍的全部知识点内容,感谢大家对谷谷点程序的支持。

java integer null 0_Mybatis Integer类型参数值为0时得到为空的解决方法相关推荐

  1. Mybatis Integer类型参数值为0时判断为空、空字符串不通过

    根据状态查询是,由于status是Integer类型,所以当前状态为0时,变成了查询了所有的状态信息. <if test="requestParam.status != null an ...

  2. Adobe flash cs5 的Java运行时环境初始化错误 完美解决方法

    Adobe flash cs5 的Java运行时环境初始化错误 完美解决方法 下载网络上的Adobe flash cs5 精简版(绿色版),Java运行时环境初始化时出现错误,你可能需要重装Flash ...

  3. c#关于int(或其他类型)的字段在对象初始化时默认初始化问题的解决方法

    c#关于int(或其他类型)的字段在对象初始化时默认初始化问题的解决方法 参考文章: (1)c#关于int(或其他类型)的字段在对象初始化时默认初始化问题的解决方法 (2)https://www.cn ...

  4. 【MyBatis使用】mapper.xml 文件内<if test>标签判断参数值不等于null和空 当参数值为 0 时筛选条件失效原因分析(源码探究)

    这个问题有不少小伙伴遇到过,也给出了解决方案,但是没有探究原因,这次读一下源码,看看原因在哪里. 1. 条件失效情况复现 Mapper.xml内的动态SQL如下[伪代码] <select id= ...

  5. java silk转mp3_微信小程序录音文件格式silk遇到的问题及解决方法

    不好意思,误导大家了,这种将silk解密的方式只是在小程序测试的时候可以,上线以后这种方法是不行的,还是需要使用解密转码.参见:https://github.com/kn007/silk-v3-dec ...

  6. eclipse java web乱码_JAVA and JAVA WEB with TOMCAT and ECLIPSE 学习过程中遇到的字符乱码问题及解决方法汇总(随时补充)...

    JAVA语言具有跨平台,unicode字符集编码的特点. 但是在开发过程中处理数据时涉及到的字符编码问题零零散散,尤其是处理中文字符时一不留神就可能出现一堆奇奇怪怪的符号,俗称乱码. 对于乱码,究其原 ...

  7. java读txt文件乱码_java读取txt文件时出现中文乱码怎么解决

    java读取txt文件时出现中文乱码怎么解决 发布时间:2020-06-25 15:27:31 来源:亿速云 阅读:105 作者:Leah java读取txt文件时出现中文乱码怎么解决?针对这个问题, ...

  8. java获取系统时间差_java获取系统时间与实际相差8小时的解决方法

    Java ConcurrentModificationException异常原因和解决方法 在前面一篇文章中提到,对Vector.ArrayList在迭代的时候如果同时对其进行修改就会抛出java.u ...

  9. java安装有错误码咋办_java编程出现的错误对应的解决方法

    error: could not open D:\java\jre1.8\lib\amd64\jvm.cfg 解决方法:把java的环境变量%JAVA_HOME%/bin上移到最上面 优化 查看网页源 ...

最新文章

  1. C语言数据类型大学霸IT达人
  2. thinkphp-权限控制
  3. mybatis与mysql调优_MySQL + mybatis的SQL优化方案
  4. C和C++之用extern “C“实现它们之间的互调
  5. GPU CUDA 经典入门指南
  6. 钱币掉落动画android,mpvue实现小程序签到金币掉落动画(api实现)
  7. 设置IDEA显示Services窗口,方面服务启动关停等操作
  8. 从 重复叠加字符串匹配 看Java String源码中的contains方法
  9. 编写一个Applet在屏幕上画椭圆,椭圆的大小和位置由鼠标决定
  10. python实现自动打电话软件_python拨打电话
  11. Vmware、Hyper-V、Virtual PC虚拟机运用usb server使用USB加密狗设备
  12. 探索性测试ET(Exploratory Test)
  13. DongDong认亲戚 来源:牛客网
  14. win10电池图标不能调亮度_win10电池图标下面的亮度调节用不了
  15. 安卓Android拍照车牌,车牌扫描识别技术SDK
  16. WHERE EXISTS
  17. 游戏化是通证经济的必由之路——与游戏化专家刘沐真的对话(下)
  18. 元末明初为什么会爆发农民起义
  19. 有关weka的相关问题
  20. h3cr4900g3安装系统_H3C服务器安装Windows操作系统

热门文章

  1. nstimer循环引用_ios开发中经典循环引用场景?
  2. php毕设周记_毕设周记
  3. 逻辑回归模型 python_机器学习-逻辑回归分析(Python)
  4. kodi android设置中文,Kodi(原XBMC)
  5. ipython使用 python3,2019-04-29 python/ipython设置默认python3
  6. 低配服务器装那个系统吗,用低配服务器好还是高配vps
  7. java实现jsonscheme_java – jsonschema和日期类型
  8. java 安全库_国家信息安全漏洞库
  9. lstm 输入数据维度_LSTM 股票市场预测入门
  10. 使用系统调用pipe建立一条管道线_【Linux系统】Linux进程间通信