set标记是mybatis提供的一个智能标记,我一般将其用在修改的sql中,例如以下情况:
<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>
在上述的代码片段当中,假如说现在三个字段都有值得话,那么上面打印的SQL语句如下:
update user set name='xxx' , gender='xx' where id='x'
在上面标红的地方是没有逗号的,也就是说set标记已经自动帮助我们把最后一个逗号给去掉了