mybatis 標籤的使用

2021-08-18 16:03:31 字數 1651 閱讀 1254

mybatis where標籤的使用

where後面跟查詢條件 簡化sql語句中判斷條件的書寫

例:select * from user 

id=#

and name=#

and gender=#

mybatis會智慧型的把首個and 或 or 給忽略

如果id為null 執行的sql語句為 :

select * from user where name='***' and gender='***'

mybatis set標籤的使用

例:update user 

id=#,

name=#,

gender=#,

如上片段假如都不為null的情況下執行sql為: update user set id="xx",name='***',gender='***';

在如上sql中最後乙個逗號會被set標記自動忽略不計

mybatis trim標籤的使用

trim 屬性

prefix:字首

suffix:字尾

prefixoverrides:忽略第乙個指定分隔符

suffixoverrides:會略最後乙個分隔符

例:1)

select * from user 

id=#

and name=#

and gender=#

如果id為null執行的sql語句為:

select * from user where name="***" and gender="***"

2)update user 

id=#,

name=#,

gender=#

如果gender為null 執行的sql語句為:

update user set id="xx",name="xx"

mybatis foreach標籤的使用

可以利用標籤實現sql條件的迴圈,可完成類似批量的sql

mybatis接受的引數分為:

(1)基本型別(2)物件(3)list(4)陣列(5)map

引數:collection:要迴圈的集合

index:定乙個名字,用於表示在迭代過程中,每次迭代到的位置

item:集合中每乙個元素進行迭代時的別名

open:以什麼開始

close:以什麼結束

separator:迴圈內容之間以什麼分隔 

例:1)批量新增

insert into user(id,name,gender) values

#,#,#

若list有兩條資料 則執行的sql語句為:

insert into user(id,name,gender) values ("1","張三","男"),("2","李四","女")

void add(listusers);

2)批量刪除

delete from user where id in

#如果有兩條資料要刪除 執行的sql語句為:

delete from user where id in(1,2)

mybatis sql標籤的使用

通過sql片段達到**重複利用

例:select count(*)

select * 

from user

mybatis 標籤的使用

標籤的使用 這個類似於hibernte用於對映我們建立的vo物件與資料庫欄位的對應。mybatis where標籤的使用 where後面跟查詢條件 簡化sql語句中判斷條件的書寫 例 select from user id and name and gender mybatis會智慧型的把首個and...

mybatis 標籤的使用

mybatis where標籤的使用 where後面跟查詢條件 簡化sql語句中判斷條件的書寫 例 select from user id and name and gender mybatis會智慧型的把首個and 或 or 給忽略 如果id為null 執行的sql語句為 select from ...

MyBatis 標籤的使用

mybatis在生成update語句時若使用if標籤,如果前面的if沒有執行,則可能導致有多餘逗號的錯誤。使用set標籤可以將動態的配置set 關鍵字,和剔除追加到條件末尾的任何不相關的逗號。沒有使用if標籤時,如果有乙個引數為null,都會導致錯誤,如下示例 update conf banner ...