當前位置:
首頁 > 知識 > 實現mybatis框架SQL映射文件SQL片段

實現mybatis框架SQL映射文件SQL片段

實現mybatis框架SQL映射文件SQL片段之十年開發者都不知道的秘密

哈哈分享幾組小編元旦假期出去玩看到的煙花照片哈哈 好看嗎?嘻嘻

感覺自己還沉浸在元旦的假期中,沒心情工作了都/哭

好了開心的節日過完之後

不要忘記學習呀!

今天分享得是 動態 sql

if 標籤和 where 標籤

還記得我們上一下次分享的 mapper 的特性中有一個就是傳入包裝類的查詢語句嗎?

我們上面用的是登錄名查詢,要是我們想用別的欄位查詢呢?畢竟我們傳入的是一個包裝類。包含了很多的欄位,像用戶名,生日等等。這個時候就可以利用我們的 if 標籤和 where 標籤。

where 標籤只有在一個以上的 if 條件有值的情況下才去插入「WHERE」子句。而且,若最後的內容是「AND」開頭的,where 元素也知道如何將他們去除。後面這句話可以這樣理解!

如果沒有 where 標籤,我們的 SQL 語句就如上圖所示。當 loginName 為空的時候,我們的 SQL 語句就變成了

SELECT USER_ID ,USER_NAME ,LOGIN_NAME ,BIRTHDAY,TV_UPDATE FROM M_USER WHERE AND USER_NAME LIKE "%$%"

這樣 SQL 語句就出錯了,當我們使用 標籤的時候,如果遇到的第一個條件,出現 and 的時候,就會把這個 and 去掉。

foreach

這個標籤我們應該很眼熟了。我們直接上例子。

需求:需要查詢指定id集合的所有用戶信息

SELECT * FROM M_USER WHERE USER_ID IN (1,2,3)

在我們的包裝類中添加一個 list ids 集合。

AND USER_ID IN(1,2,3)

collection :輸入參數的屬性

open :循環前的開始符號

close:循環後的結束符

separator:分隔符

就把我們的兩條數據取出來了

sql 片段

我們在寫這個 SQL 映射文件的時候,有很多重複的 SQL 語句。將這些重複的SQL 語句提取出來,稱為 SQL 片段,給不同方法使用。

把我們的 SQL 語句提取出來,用 SQL 標籤包起來。然後再用 include 標籤,導進語句中。

像這些我們需要查詢的欄位,也可以這樣子搞。

測試一下。

增加記錄返回主鍵

這個就是增加一條記錄的時候,拿到我們增加的記錄的 id 號,這個在我們之後的複雜的項目中有很大的作用。

那麼今天的分享就到這裡了!

2017年已經過去了

定的小目標都實現了嗎?

嘿嘿

那麼

2018 我們來了!

小夥伴們

元旦過的開心嗎?

開心的節日過完之後

不要忘記學習呀!

今天分享得是 動態 sql

if 標籤和 where 標籤

還記得我們上一下次分享的 mapper 的特性中有一個就是傳入包裝類的查詢語句嗎?

我們上面用的是登錄名查詢,要是我們想用別的欄位查詢呢?畢竟我們傳入的是一個包裝類。包含了很多的欄位,像用戶名,生日等等。這個時候就可以利用我們的 if 標籤和 where 標籤。

where 標籤只有在一個以上的 if 條件有值的情況下才去插入「WHERE」子句。而且,若最後的內容是「AND」開頭的,where 元素也知道如何將他們去除。後面這句話可以這樣理解!

如果沒有 where 標籤,我們的 SQL 語句就如上圖所示。當 loginName 為空的時候,我們的 SQL 語句就變成了

SELECT USER_ID ,USER_NAME ,LOGIN_NAME ,BIRTHDAY,TV_UPDATE FROM M_USER WHERE AND USER_NAME LIKE "%$%"

這樣 SQL 語句就出錯了,當我們使用 標籤的時候,如果遇到的第一個條件,出現 and 的時候,就會把這個 and 去掉。

foreach

這個標籤我們應該很眼熟了。我們直接上例子。

需求:需要查詢指定id集合的所有用戶信息

SELECT * FROM M_USER WHERE USER_ID IN (1,2,3)

在我們的包裝類中添加一個 list ids 集合。

AND USER_ID IN(1,2,3)

collection :輸入參數的屬性

open :循環前的開始符號

close:循環後的結束符

separator:分隔符

就把我們的兩條數據取出來了

sql 片段

我們在寫這個 SQL 映射文件的時候,有很多重複的 SQL 語句。將這些重複的SQL 語句提取出來,稱為 SQL 片段,給不同方法使用。

把我們的 SQL 語句提取出來,用 SQL 標籤包起來。然後再用 include 標籤,導進語句中。

像這些我們需要查詢的欄位,也可以這樣子搞。

測試一下。

增加記錄返回主鍵

這個就是增加一條記錄的時候,拿到我們增加的記錄的 id 號,這個在我們之後的複雜的項目中有很大的作用。

那麼今天的分享就到這裡了!

2017年已經過去了

定的小目標都實現了嗎?

嘿嘿

那麼

2018 我們來了!

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 java學習吧 的精彩文章:

Mybatis與Spring的整合

TAG:java學習吧 |