在mybatis中去除多余的前綴或者后綴操作
A.where 標簽會自動刪除第一個多余的and或者or,set標簽會自動刪除最后一個','
B.trim標記,是一個格式化的標記,可以完成set或者是where標記的功能,如下代碼:
1、
select * from user
<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>
</trim>
假如說name和gender的值都不為null的話打印的SQL為:select * from user where name = 'xx' and gender = 'xx'
上面兩個屬性的意思如下:
prefix:前綴
prefixoverride:去掉第一個and或者是or
2、
update user
<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>
</trim>
假如說name和gender的值都不為null的話打印的SQL為:update user set name='xx' , gender='xx' where id='x'
自動加了一個set前綴和where后綴,上面三個屬性的意義如下,其中
prefix意義如上:
suffixoverride:去掉最后一個逗號(也可以是其他的標記,就像是上面前綴中的and一樣)
suffix:后綴
補充知識:mybatis-plus 表名前綴 taablePrefix
這樣類的前面不用指定表名

以上這篇在mybatis中去除多余的前綴或者后綴操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java屬性文件操作之Properties與ResourceBundle詳解
這篇文章主要介紹了Java屬性文件操作之Properties與ResourceBundle詳解,兩個類都可以讀取屬性文件中以key/value形式存儲的鍵值對,ResourceBundle讀取屬性文件時操作相對簡單,需要的朋友可以參考下2023-11-11
Spring為singleton?bean注入prototype?bean
這篇文章主要介紹了Spring為singleton?bean注入prototype?bean,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-07-07
IDEA-SpringBoot項目Debug啟動不了(卡住不動)的原因分析
這篇文章主要介紹了IDEA-SpringBoot項目Debug啟動不了(卡住不動)的原因分析,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-11-11
基于jmeter實現(xiàn)跨線程組傳遞token過程圖解
這篇文章主要介紹了基于jmeter實現(xiàn)跨線程組傳遞token,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2020-04-04
Springboot中useGeneratedKeys用法小結(jié)
本文主要介紹了Springboot中useGeneratedKeys用法小結(jié),useGeneratedKeys?是 MyBatis 框架中的一個參數(shù),用于指定是否允許 JDBC 支持自動生成主鍵,感興趣的可以了解一下2024-09-09

