- <trim>通常用于在SQL语句中去除多余的空格和逗号。它可以根据传入的参数动态判断是否需要添加或去除内容。
- 在trim前面加上set
示例
<update id="updateStudent" parameterType="student">
update student
<trim prefix="set">
<if test="name!=null and name!=''">name=#{name},</if>
<if test="age!=null and age!=''">age=#{age},</if>
<if test="sex!=null and age!=''">sex=#{sex}</if>
</trim>
<where>id=#{id}</where>
</update>
- 在trim后面添加上where内容
示例
<update id="updateStudent" parameterType="student">
update student set
<trim suffix="where id=#{id}">
<if test="name!=null and name!=''">name=#{name},</if>
<if test="age!=null and age!=''">age=#{age},</if>
<if test="sex!=null and age!=''">sex=#{sex}</if>
</trim>
</update>
- 删掉name前面的set
示例
<update id="updateStudent" parameterType="student">
update student set
<trim prefixOverrides="set" >
<if test="name!=null and name!=''">set name=#{name},</if>
<if test="age!=null and age!=''">age=#{age},</if>
<if test="sex!=null and age!=''">sex=#{sex}</if>
</trim>
<where>id=#{id}</where>
</update>
删掉最后一个逗号
示例
<update id="updateStudent" parameterType="student">
update student set
<trim suffixOverrides=",">
<if test="name!=null and name!=''">name=#{name},</if>
<if test="age!=null and age!=''">age=#{age},</if>
<if test="sex!=null and age!=''">sex=#{sex},</if>
</trim>
<where>id=#{id}</where>
</update>
属性 |
描述 |
prefixOverrides |
去除<trim>前的部分的内容 |
prefix |
在<trim>前的部分添加语句 |
suffixOverrides |
去除<trim>语句内结束部分的内容 |
suffix |
在<trim>语句内结束部分添加语句 |
注
<trim> 元素只有在其中包含至少一个子元素时才会生效。如果所有子元素都没有生效,则<trim>元素会被忽略。同时,在最后生成的SQL语句中,最后一个字段后面不应该有逗号,因此<trim>元素会自动移除最后一个字段后面的逗号。