动态 SQL是Mybatis的特性之一
1.
在这里插入代码片
<update>
update user
<set>
<if test="name != null and name.length()>0">name = #{name},</if>
<if test="gender != null and gender.length()>0">gender = #{gender},</if>
</set>
where id = #{id}
</update>
这种情况是:多属性修改时,当传入的某一个参数为空时,该属性不作修改。
在这里插入代码片段
<select>
select * from user
<where>
<if test="name != null">
name = #{name}
</if>
<if test="age != null">
and age= #{age}
</if>
</where>
</select>
这种情况是:多条件查询时,当传入的某一参数为空时,该属性不作为筛选条件。