一. 问题背景
使用mybatis写动态sql语句的时候,常使用<if>
,这次遇到的问题是,使用<if>
判断字符串类型的变量是否等于某个值,结果却不生效了。
二. 造成无效的原因
我们常用的是双引号套单引号,如下:
<if test = " deptName != null and deptName != '' ">
and name = 'zhangsan'
</if>
三. 解决方案
使用单引号套双引号,如下:
<if test = ' deptName == "1001" '>
and name = 'zhangsan'
</if>