mybatis 传参为 Integer 时 ,Mapper 文件 中判断 条件 问题,传入0值,直接忽略判断
2016-04-14 10:05
633 查看
<if test="valiStatus==null || valiStatus==‘‘ || valiStatus==4 "> b.work_permit_card_cert is not null and b.work_permit_card_cert!=1 and b.delete_flag =0 </if> <if test="valiStatus==0"> u.user_type = 0 and b.work_permit_card_cert = 0 and b.delete_flag =0 </if> <if test="valiStatus==2"> u.user_type=1 and b.work_permit_card_cert=2 and b.delete_flag =0 </if>
其中viliStauts 是一个 Integer 型的参数 , 如果 传入 4 和2 是可以正确的执行 if 条件的 。。
但是如果传入0 的话 , 就会出现 前两个 if 条件都判断正确的情况,导致sql 错误。
解决办法是不要写valiStatus==‘‘ 的判断,(以后要注意类型问题,Integer 就不要判断 ==‘‘了)
相关文章推荐
- Android studio 使用 Genymotion问题集锦
- Swift UIAlterViewController
- Android热补丁动态修复技术(三)—— 使用Javassist注入字节码,完成热补丁框架雏形(可使用)
- Android 使用命令模拟sdcard相关行文
- Android FrameWork——Activity启动过程详解
- 2.1 Android进程间通信(IPC)----Binder机制的简单介绍
- iOS --调试
- Android Studio简单设置
- 通过移动设备访问邮件
- Android onSaveInstanceState和onRestoreInstanceState触发的时机
- [Learn Android Studio 汉化教程]第一章 : Android Studio 介绍
- mac版android studio 2.0正式版
- Ubuntu下调试android设备
- 收集android国内资源
- iOS常用数据加密算法介绍和比较
- 基于JS实现移动端访问PC端页面时跳转到对应的移动端网页
- Android Studio 2.0的闪电编译的设置
- 解决cocos2dx-3.8.1安卓复制工程后编译异常
- 【iOS开发】iOS极光推送 点击推送消息跳转页面
- 每天laravel-20160714|AppNamespaceDetectorT