環境
mysql 、 springboot 、 mybatis 、java1.8 、 idea
1.消滅where 1=1
- 在ibatis裡有大量where 1=1的代碼
![通過3個例子,把Mybatis常見標籤學會,程序員必須get](http://p2.ttnews.xyz/loading.gif)
- Mybatis可以用下面標籤,消滅1=1噁心代碼,最下面有完整例子
prefix:在trim標籤內sql語句加上前綴。
suffix:在trim標籤內sql語句加上後綴。
suffixOverrides:指定去除多餘的後綴內容,如:suffixOverrides=",",去除trim標籤內sql語句多餘的後綴","。
prefixOverrides:指定去除多餘的前綴內容
2. 防止被轉義
Ibatis裡的一樣的
如果寫的sql中有一些特殊的字符的話,在解析xml文件的時候會被轉義,但我們不希望他被轉義,所以我們要使用來解決
3. foreach批量插入,in(多值)
- Ibatis裡是
![通過3個例子,把Mybatis常見標籤學會,程序員必須get](http://p2.ttnews.xyz/loading.gif)
- Mybatis見下面例子 <foreach collection="extInfos" item="extInfo" open="(" close=")" separator=",">
foreach元素的屬性主要有 item,index,collection,open,separator,close。
item表示集合中每一個元素進行迭代時的別名,
index指 定一個名字,用於表示在迭代過程中,每次迭代到的位置,
open表示該語句以什麼開始,
separator表示在每次進行迭代之間以什麼符號作為分隔 符,
close表示以什麼結束。
4.非空
- Mybatis <if test="value !=null" >
- ibatis 是這樣的
將插入數據的主鍵返回到 對象中
運行效果
自定義入參例子
Mybatis裡的例子分析
一個分頁查詢、一個批量新增
注意分頁查詢入參是map類型,map比較靈活只要key 與xml裡匹配正確就行。
分頁條件查詢例子
分頁條件查詢應該是SQL比較複雜情況,本例子包含 like 、 = 、in,基本的情況覆蓋 一般 in 用在狀態字段
批量插入例子
注意 collection=”configs” 跟代碼要匹配
這裡的命名一樣要注意
Mybatis的加字段【請注意】
建議所有SQL都增加此新增字段
新增字段,加resultMap、Base_Column_List
運行效果
分頁演示了,name like 模糊查詢 ;value=查詢;
想學demo例子具體怎麼玩的 傳送門
java軟件開發、程序員、編程
閱讀更多 程序汪汪 的文章