07MyBatis對映檔案深入

2021-09-28 13:37:26 字數 1556 閱讀 2342

2.1 動態sql語句

2.1.1動態sql語句概述

mybatis 的對映檔案中,前面我們的 sql 都是比較簡單的,有些時候業務邏輯複雜時,我們的 sql是動態變化的,此時在前面的學習中我們的 sql 就不能滿足要求了。

2.1.2動態 sql 之

我們根據實體類的不同取值,使用不同的 sql語句來進行查詢。比如在 id如果不為空時可以根據id查詢,如果username 不同空時還要加入使用者名稱作為條件。這種情況在我們的多條件組合查詢中經常會碰到。

select * from user

and id=#

and username=#

當查詢條件id和username都存在時,控制台列印的sql語句如下:

當查詢條件只有id存在時,控制台列印的sql語句如下:

2.1.3 動態 sql 之

迴圈執行sql的拼接操作,例如:select * from user where id in (1,2,5)。

select * from user

#

測試**片段如下:

foreach標籤的屬性含義如下:

標籤用於遍歷集合,它的屬性:

•collection:代表要遍歷的集合元素,注意編寫時不要寫#{}

•open:代表語句的開始部分

•close:代表結束部分

•item:代表遍歷集合的每個元素,生成的變數名

•sperator:代表分隔符

2.2 sql片段抽取

sql 中可將重複的 sql 提取出來,使用時用 include 引用即可,最終達到 sql 重用的目的

where id=#

#

MyBatis對映檔案

5 刪除 6 更新 7 根據員工id和姓名獲取員工物件 8 測試類 mybatis 的真正強大在於它的對映語句,也是它的魔力所在。由於它的異常強大,對映器的 xml 檔案就顯得相對簡單。如果拿它跟具有相同功能的 jdbc 進行對比,你會立即發現省掉了將近 95 的 mybatis 就是針對 sql ...

Mybatis對映檔案

查詢語句是mybatis中最常用的元素之一,mybatis的基本原則之一是 在每個插入,更新,或刪除操作之間,通常會執行多個查詢操作。因此,mybatis在查詢和結果對映做了相當多的改進。乙個簡單查詢的select元素是很簡單的 select from person where id 這個語句名為s...

MyBatis對映檔案

1.動態sql語句概述 mybatis 的對映檔案中,前面我們的 sql 都是比較簡單的,有些時候業務邏輯複雜時,我們的 sql是動態變化的,此時在前面的學習中我們的 sql 就不能滿足要求了。2.動態 sql 之 我們根據實體類的不同取值,使用不同的 sql語句來進行查詢。比如在 id如果不為空時...