mybatis的if判断integer问题
目录
- if判断integer的问题
- if判断integer类型注意点
if判断integer的问题
昨天在使用mybatis的if判断integer时遇见一个小问题:
<if test="isChoose != null and isChoose != '' and isChoose == 0"> </if>
我发现前段同事调用接口的时候传参总是无法进入条件,
原来mybatis的if将0认为是'',所以这样判断是无法进入条件的,将数字换为1,2之类的就可以了;
if判断integer类型注意点
今天在写mapper文件时遇到integer类型参数时判断不为空,如下
<if test="status != null and status != ''"> SQL。。。 </if>
当status=0时,if语句没有执行。
究其原因,原来mybatis默认将integer=0的参数等于‘’空串。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
Mybatis单个参数的if判断报异常There is no getter for property named 'xxx' in 'class java.lang.Integer'的解决方案
我们都知道mybatis在进行参数判断的时候,直接可以用<if test=""></if> 就可以了,如下: 1.常规代码 <update id="update" parameterType="com.cq2022.zago.order.entity.Test" > update t_test_l <set > <if test="trnsctWayId != null"
-
mybatis判断int是否为空的时候,需要注意的3点
mybatis判断int是否为空的注意点 1.int为空时会自动赋值0,所以必须用integer作为javaBean的属性值类型. 2.必须注意封装的get.set.也是Integer.不然也会报错. 3.注意好以上两个点,直接用null判断 例子: public class ExcelPutVo { private Integer startTime;// 开始时间 private Integer endTime;// 截止时间 private int sentId;// 下达者id priv
-
mybatis的坑-integer类型为0的数据if test失效问题
integer类型为0的数据if test失效 mybatis的where动态判断语句if test 遇到tinyint类型为0的数据失效 发现一个mybatis的坑,有个支付表,通过状态去筛选已支付/未支付的数据,支付状态用status字段表示,status=0表示未支付,status=1表示已支付,且status类型为Integer.当选择已支付即status=1时,可以筛选成功已支付的数据列表,但是当选择未支付即status=0时,查出来的数据是未支付和已支付的所有数据. 此时就有点懵逼了
-
在mybatis中使用mapper进行if条件判断
目的: 在使用mybatis框架中mapper文件有自动生成,但有时需要自己添加sql语句进行开发,当遇到需要使用 if进行条件判断的时候该怎么写? 查询sql语句如下: <select id="queryData" parameterType="com.pojo.QueryDetailReq" resultType="com.pojo.MxDataInfo"> select * from db_trd.tb_trd_secu_ord
-
mybatis的if判断integer问题
目录 if判断integer的问题 if判断integer类型注意点 if判断integer的问题 昨天在使用mybatis的if判断integer时遇见一个小问题: <if test="isChoose != null and isChoose != '' and isChoose == 0"> </if> 我发现前段同事调用接口的时候传参总是无法进入条件, 原来mybatis的if将0认为是'',所以这样判断是无法进入条件的,将数字换为1,2之类的
-
mybatis参数String与Integer类型的判断方式
目录 String与Integer类型的判断 我们一般是这样写 使用<if>标签判断Integer类型的坑 没想到还有另外的问题 注意上面的第二个条件使用的单个等号 String与Integer类型的判断 mybatis写update时,正常是set了值才会进行update操作 我们一般是这样写 <if test="sampleBatchNo != null and sampleBatchNo != ''"> SAMPLE_BATCH_NO =#{sampleB
-
mybatis if标签判断不生效的解决方法
实际需求 <if test="computationRule == '1'"> FROM app_sz_bbb a </if> <if test="computationRule == '2'"> FROM app_ccc a </if> 这种情况不生效, 原因:mybatis是用OGNL表达式来解析的,在OGNL的表达式中,'0'会被解析成字符,java是强类型的,char 和 一个string 会导致不等,所以if
-
mybatis的if判断不要使用boolean值的说明
mybatis的if判断里面最好不要使用boolean值: mybatis会默认把空值转为false.所以如果遇见前段传空值,这个字段在mybatis里面永远就是false了, 可以使用数字类型代替,但是不要使用0作为参数: 补充知识:[MyBatis]<if test=""></if>标签的条件判断(Boolean类型参数) 在MyBatis 中,动态 SQL 元素和 JSTL 或基于类似 XML 的文本处理器相似. 在 MyBatis 3 之前的版本中,有很
-
Java 如何判断Integer类型的值是否相等
目录 判断Integer类型的值是否相等 Integer赋值比较 赋值操作 构造函数 判断Integer类型的值是否相等 我们知道Integer是int的包装类,在jdk1.5以上,可以实现自动装箱拆箱,就是jdk里面会自动帮我们转换,不需要我们手动去强转,所以我们经常在这两种类型中随意写,平时也没什么注意 但Integer他是对象,我们知道 == 比较的是堆中的地址,但有个奇怪的事是, 如果 Integer a = 123, Integer b = 123,可以返回true,但如果Intege
-
MyBatis if test 判断字符串相等不生效问题
目录 MyBatis if test 判断字符串相等不生效 原因分析 解决方法 MyBatis if test 判断字符串相等的坑 1. if 判断字符串 2. if嵌套 MyBatis if test 判断字符串相等不生效 采用 MyBatis 框架操作 MySQL 数据库时,判断传入的字符串 priceFlag 值为"0"时,按照 price 属性降序排列,如下 xml 语句未生效: <if test="priceFlag != null and priceFlag
-
Mybatis 中如何判断集合的size
Mybatis中判断集合的size,可以用下面的方法来做. <if test="null != staffCodeList and staffCodeList.size > 0"> and gui.USER_CODE not in <foreach collection="staffCodeList" item="staffCode" open="(" separator="," c
-
Mybatis返回int或者Integer类型报错的解决办法
会报错如下: org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.apache.ibatis.binding.BindingException: Mapper method 'com.bill.springMybatis.dao.UserDao.getUserIdByName attempted to return null from a m
-
mybatis if test条件判断语句中的判断问题分析
目录 iftest条件判断语句中的判断问题 我在mybatis中定义的sql语句如下 或使用equals() mybatis中iftest判断大坑 使用Mybatis时,常常会判断属性是否为空 原因分析 if test条件判断语句中的判断问题 写这个主要是描述在mybatis中要注意的问题,很不幸,自己没注意,跳坑了. 我在mybatis中定义的sql语句如下 <if test="facilityOccupied != null and facilityOccupied != '' and
随机推荐
- JS+CSS实现TreeMenu二级树形菜单完整实例
- photoshop制作网站流程图解
- 在ASP.NET 2.0中操作数据之七十:配置数据库连接和命令等级设置
- JavaScript设计模式之单例模式详解
- 探索Javascript中this的奥秘
- 两个listbox实现选项的添加删除和搜索
- PHP+Mysql+Ajax实现淘宝客服或阿里旺旺聊天功能(前台页面)
- PHP截取中文字符串的问题
- 关于IE的RegExp.exec的问题
- Python利用Beautiful Soup模块修改内容方法示例
- Mysql 切换数据存储目录的实现方法
- Java Web三层架构的配置详解
- Java中String类(字符串操作)的10个常见问题和解决方法
- lua开发中实现MVC框架的简单应用
- C# listview 点击列头排序的实例
- 轻松掌握Java状态模式
- PHP4中实现动态代理
- 自定义Adapter并通过布局泵LayoutInflater抓取layout模板编辑每一个item实现思路
- Python与人工神经网络:使用神经网络识别手写图像介绍
- Android实现照片墙效果的实例代码