开发踩坑-mapper.xml中字符串类型的==

简介: 关于mapper.xml中判断字符串类型的变量的==

使用SSM作为java的开发框架,总少不了在xxMapper.xml手写sql,那么也就少不了、标签的书写


1. 字符串类型的判断

1.1 惯用写法

<iftest="userType != null and userType != ''">  and user_type = #{userType}
</if>

长久以来,对于变量的判断,大家都养成了上面的习惯

实际上,这种写法对于字符串类型的userType没有任何问题

1.2 字符串类型的值判断

下面是在开发的过程中的一种错误写法

<iftest="userType != null userType == '1'">  and use_type = #{userType}
</if>

那么解决方案是以下

  1. 将单引号放在最外面,将双引号作为字符串的值判断
<iftest='userType != null userType == "1"'>  and use_type = #{userType}
</if>
  1. 使用对象的toString()方法
<iftest="userType != null userType == '1'.toString()">  and use_type = #{userType}
</if>

2. number类型判断

若果userType是数字类型的话,当userType=0时就不能进入if条件的判断

所以此时只需要判断不等于null即可,或者userType!=0

<iftest="userType != null">  and user_type = #{userType}
</if>



在看过mybatis的源码之后,再进行更文,有理有据,对这些不能使用的写法来进行解释

目录
相关文章
|
1月前
|
XML 数据格式
加载 XML 字符串
加载 XML 字符串
|
1月前
|
XML JSON 数据可视化
数据集学习笔记(二): 转换不同类型的数据集用于模型训练(XML、VOC、YOLO、COCO、JSON、PNG)
本文详细介绍了不同数据集格式之间的转换方法,包括YOLO、VOC、COCO、JSON、TXT和PNG等格式,以及如何可视化验证数据集。
64 1
数据集学习笔记(二): 转换不同类型的数据集用于模型训练(XML、VOC、YOLO、COCO、JSON、PNG)
|
1月前
|
XML 数据格式
加载 XML 字符串
加载 XML 字符串
|
1月前
|
XML 数据格式
加载 XML 字符串
加载 XML 字符串
|
1月前
|
XML 数据格式
加载 XML 字符串
加载 XML 字符串
|
1月前
|
XML 数据格式
加载 XML 字符串
加载 XML 字符串
|
1月前
|
XML 数据格式
加载 XML 字符串
加载 XML 字符串
|
1月前
|
XML 数据格式
加载 XML 字符串
加载 XML 字符串
|
1月前
|
XML 数据格式
加载 XML 字符串
加载 XML 字符串
|
1月前
|
XML 数据格式
加载 XML 字符串
加载 XML 字符串