mybatis中trim的用法

2021-10-08 08:31:27 字數 1473 閱讀 3632

使用過trim標籤都知道trim標籤有四個屬性

1.prefix,prefixoverrides,suffix,suffixoverrides
本人一直對這四個標籤的名字無法理解,並對其功能感到混亂。下面是自己思考後的一些總結:

trim標籤使用

1、trim 有四個屬性

2、prefix,suffix 表示在trim標籤包裹的部分的前面或者後面新增內容(注意:是沒有prefixoverrides,suffixoverrides的情況下)

3、如果有prefixoverrides,suffixoverrides 表示覆蓋overrides中的內容。

4、如果只有prefixoverrides,suffixoverrides 表示刪除。

例如:

"testtrim" parametertype=

"com.mybatis.pojo.user"

>

update user

"set" suffixoverrides=

",">

"cash!=null and cash!=''"

>cash=

#, "address!=null and address!=''"

>address=

#,

id =

#

只有prefix=「set」,表示在trim包裹的部分的前面新增 set。

只有suffixoverrides=「,」,表示刪除最後乙個逗號。

上例也可以寫成

"testtrim" parametertype=

"com.mybatis.pojo.user"

>

update user

set"," suffix=

"where id = #"

>

"cash!=null and cash!=''"

>cash=

#, "address!=null and address!=''"

>address=

#,

由於set寫在了外面,trim中就不再需要prefix屬性了,所以刪除。

where標籤從外面拿進trim裡面,這樣其實可以認為是將最後乙個逗號」,」替換成了where id = #。所以suffix和suffixoverrides一起使用。

總結:

trim標籤的prefix/suffix屬性:如果trim後內容不為空,則增加某某字串(作字首/字尾);

trim標籤的prefixoverrides/suffixoverrides屬性:如果trim後內容不為空,則刪掉(字首/字尾的)某某字串。

MyBatis中的trim 標籤 用法

mybatis的trim標籤一般用於去除sql語句中多餘的and關鍵字,逗號,或者給sql語句前拼接 where set 以及 values 等字首,或者新增 等字尾,可用於選擇性插入 更新 刪除或者條件查詢等操作。使用trim標籤去除多餘的and關鍵字 findactivebloglike res...

MyBatis中trim的應用

mybatis動態sql中trim標籤的使用 mybatis 官方文件 對 動態sql中使用trim標籤的場景及效果介紹比較少。事實上trim標籤有點類似於replace效果。trim 屬性 prefix 字首覆蓋並增加其內容 suffix 字尾覆蓋並增加其內容 prefixoverrides 字首...

Mybatis中的trim標籤 總結

mybatis的trim標籤有四種 prefix,prefixoverrides,suffix,suffixoverridestrim標籤使用 1 trim 有四個屬性 2 prefix,suffix 表示在trim標籤包裹的部分的前面或者後面新增內容 注意 是沒有prefixoverrides,s...