Mybatis Mapper文件中的一小坑

前几天来一需求,实现过程当中须要修改一个底层的查询接口,具体修改就是在where中添加一个条件,因为这个底层SQL使用的地方太多,因此就想着是用if加一标识符作个判断,传一个只有我会使用的参数,而后动态加上须要拼接的where条件,第一次写法以下:app

<if test="isSendState == '1' ">接口

   and (RLT_STS_CD IN ('21','1','26'))字符串

</if>test

这里的isSendState就是我加的标识符,这个标识符我加了,可是条件没加上,巨坑,想不到为何...map

后来查阅各类资料才发现,mapper 中字符串作判断时须要使用双引号,即应修改成:查询

<if test='isSendState == "1" '>字符

   and (RLT_STS_CD IN ('21','1','26'))底层

</if>参数

‘1'标识的是字符

“1”才是字符串,二者不一样

相关文章
相关标签/搜索