修剪标记是一个格式化的标记,可以完成设置或者是其中标记的功能,如下代码:
1,
从用户选择*
<trim prefix =“WHERE”prefixoverride =“AND | OR”>
<if test =“name!= null and name.length()> 0”> AND name =#{name} </ if>
<if test =“gender!= null and gender.length()> 0”> AND gender =#{gender} </ if>
</修剪>
假如说名字和性别的值都不为null的话打印的SQL为:select * from user where name ='xx'and gender ='xx'
在红色标记的地方是不存在第一个和的,上面两个属性的意思如下:
前缀:前缀
prefixoverride:去掉第一个和或者是或
2,
更新用户
<trim prefix =“set”suffixoverride =“,”suffix =“where id =#{id}”>
<if test =“name!= null and name.length()> 0”> name =#{name},</ if>
<if test =“gender!= null and gender.length()> 0”> gender =#{gender},</ if>
</修剪>
假如说名字和性别的值都不为null的话打印的SQL为:update user set name ='xx',gender ='xx'where id ='x'
在红色标记的地方不存在逗号,而且自动加了一个设置前缀和后缀地方,上面三个属性的意义如下,其中前缀意义如上:
suffixoverride:去掉最后一个逗号(也可以是其他的标记,就像是上面前缀中的和一样)
后缀:后缀