注意了,Mybatis中条件判断时遇到的坑
1.mapper中比较字符串时需要注意的问题如下:
mybatis 映射文件中,if标签判断字符串相等,两种方式:
因为mybatis映射文件,是使用的ognl表达式,所以在判断字符串isComplete变量是否是字符串Y的时候<if test="isComplete=='Y'.toString()">
或者使用下面的写法<if test = 'isComplete== "Y"'>
注意:不能使用以下方式<if test="isComplete=='Y'">and 1=1</if>
因为mybatis会把'Y'解析为字符,java是强类型语言,所以不能这样写。
扩展知识:OGNL表达式与EL表达式:
https://www.cnblogs.com/mxmbk/p/5286355.html
2.IFNULL(p1,p2)函数注意:
1、IFNULL(P1,P2)如果P1不为空,则返回值为P1;P1为NULL,则返回为P2;P2有点类似替补球员;
2、注意,IFNULL只是针对局部字段的替换;如果整个结果查出来都是空,则不能使用IFNULL(P1,P2)
注意了,Mybatis中条件判断时遇到的坑的更多相关文章
- 为什么说在使用多条件判断时switch case语句比if语句效率高?
在学习JavaScript中的if控制语句和switch控制语句的时候,提到了使用多条件判断时switch case语句比if语句效率高,但是身为小白的我并没有在代码中看出有什么不同.去度娘找了半个小 ...
- shell中条件判断if中的-z到-d的意思
shell中条件判断if中的-z到-d的意思 [ -a FILE ] 如果 FILE 存在则为真. [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真. [ -c FILE ] 如果 ...
- shell中条件判断if中的-z到-d
shell中条件判断if中的-z到-d的意思 [ -a FILE ] 如果 FILE 存在则为真. [ -b FILE ] 如果 FILE 存在且是一个块特殊文件则为真.[ -c FILE ] 如果 ...
- MyBatis中传参时为什么要用#{}
MyBatis中传参时为什么要用#{},这个问题和MyBatis如何防止SQL注入类似.不过在解释这个问题之前,先解释一下什么是SQL注入,还有些称作注入攻击这个问题. SQL注入就是SQL 对传入参 ...
- js条件判断时隐式类型转换
Javascript 中,数字 0 为假,非0 均为真 在条件判断运算 == 中的转换规则是这样的: 如果比较的两者中有布尔值(Boolean),会把 Boolean 先转换为对应的 Number,即 ...
- Mybatis if test 中int判断非空的坑
Mybatis 中,alarmType 是int类型.如果alarmType 为0的话,条件判断返回结果为false,其它值的话,返回true. <if test="alarmType ...
- 【备忘】mybatis的条件判断用<choose>
mybatis并没有if..else,在mybatis的sql mapper文件中,条件判断要用choose..when..otherwise. <choose> <when t ...
- Ruby学习中(条件判断, 循环, 异常处理)
一. 条件判断 详情参看:https://www.runoob.com/ruby/ruby-decision.html 1.详情实例(看看就中了) #---------------# # LOL场均人 ...
- mybatis 中 if-test 判断大坑
[<if test="takeWay == '0'">]mybatis的if判断 单个的字符要写到双引号里面才行,改为<if test='takeWay == & ...
随机推荐
- 2019CCPC-江西省赛
目录 Contest Info Solutions A. Cotree C.Trap D.Wave F.String G. Traffic H.Rng I. Budget J. Worker K. C ...
- win7虚拟机MAC系统
http://www.cnblogs.com/xiangshancuizhu/p/3379860.html 结果是一个周末的四分之三整进去还到处不行,然后剩下的四分之一卸载.
- MySQL数据分析-(15)表补充:存储引擎
大家好,我是jacky,很高兴继续跟大家分享<MySQL数据分析实战>,今天跟大家分享的主题是表补充之存储引擎: 我们之前学了跟表结构相关的一些操作,那我们看一下创建表的SQL模型: 在我 ...
- c 判断数字是否有限
/* isfinite example */ #include <stdio.h> /* printf */ #include <math.h> /* isfinite, sq ...
- kafka - Confluent.Kafka
上个章节我们讲了kafka的环境安装(这里),现在主要来了解下Kafka使用,基于.net实现kafka的消息队列应用,本文用的是Confluent.Kafka,版本0.11.6 1.安装: 在NuG ...
- 使用sequelize-auto 生成mysql 表的实体时主键没有 autoIncrement: true 属性
使用sequelize-auto 生成mysql 表时主键没有 autoIncrement: true 属性,这会导致插入数据时报错.看git上面是已经解决了的,解决方法是修改查询语句模板.我用的是0 ...
- Flutter设置Container的最大最小宽高
Flutter中设置Container宽高可直接通过width和height属性来设置:如下 Container( width: 100, height: 100, color: Colors.red ...
- The first one spawns an additional process forwarding requests to a series of workers (think about it as a form of shield, at the same level of apache or nginx), while the second one sets workers to n
Things to know (best practices and “issues”) READ IT !!! — uWSGI 2.0 documentationhttps://uwsgi-docs ...
- 源码编译vi过程中进行配置时报“checking if compile and link flags for Python are sane... no: PYTHON DISABLED”怎么办?
答: 需要安装python开发库(如果不安装这个库,那么在配置时执行./configure --enable-pythoninterp=yes将不会生效,以至于vi的python特性并没有被开启) 如 ...
- php+mysql模糊查询功能
一般模糊查询语句如下: SELECT 字段 FROM 表 WHERE 某字段 Like 条件 其中关于条件,SQL提供了四种匹配模式: 1,% :表示任意0个或多个字符.可匹配任意类型和长度的字符,有 ...