mybatis sql foreach 引數的傳入的三種情況!!
在使用foreach的時候最關鍵的也是最容易出錯的就是collection屬性,該屬性是必須指定的,但是在不同情況下,該屬性的值是不一樣的,主要有一下3種情況:
1.如果傳入的是單引數且引數型別是一個List的時候,collection屬性值為list
.
<foreach collection="list" item="item" open="(" close=")" separator="," index="index"> #{item}
</foreach>
2.如果傳入的是單引數且引數型別是一個array陣列的時候,collection的屬性值為array .
<foreach collection="array" item="item" open="(" close=")" separator="," index="index">
#{item}
</foreach>
3.如果傳入的引數是多個的時候,我們就需要把它們封裝成一個Map了,當然單引數也可以封裝成map,實際上如果你在傳入引數的時候,
在MyBatis裡面也是會把它封裝成一個Map的,
map的key就是引數名,
所以這個時候collection屬性值就是傳入的List或array物件在自己封裝的map裡面的key.
<foreach collection="categoryIds" item="item" open="(" close=")" separator="," index="index">#{item}
</foreach>
相關文章
- Mybatis中Foreach動態SQL標籤(map和list兩種情況)MyBatisSQL
- MyBatis中foreach傳入引數為list、陣列、map的不同寫法MyBatis陣列
- MyBatis中傳入引數為List集合的MyBatis
- Mybatis parameterType 傳入多個引數的使用MyBatis
- mybatis 傳入多個引數MyBatis
- mybatis 的傳入引數如何既有物件又有單個引數MyBatis物件
- SSM框架中Mybatis傳遞引數的幾種方法SSM框架MyBatis
- Mybatis傳入引數為List物件MyBatis物件
- Mybatis foreach 請求引數是物件集合MyBatis物件
- Mybatis 傳入多個引數查詢資料 (3種方法)MyBatis
- SpringBoot系列Mybatis之引數傳遞的幾種姿勢Spring BootMyBatis
- 15.MyBatis傳入多個引數的問題MyBatis
- MyBatis從入門到精通(八):MyBatis動態Sql之foreach標籤的用法MyBatisSQL
- mybatis如何傳引數MyBatis
- Mybatis引數傳遞MyBatis
- MyBatis的使用三(在sql語句中傳值)MyBatisSQL
- SRAM的基礎模組存有三種情況
- 請求引數為物件,mybatis的sql寫法物件MyBatisSQL
- NoClassDefFoundError的兩種情況Error
- 不重啟mysql情況修改引數變數MySql變數
- java 傳遞引數的兩種方式Java
- Mybatis中foreach的使用MyBatis
- Mybatis的引數-parameterTypeMyBatis
- SpringDataJpa列印Sql詳情(含引數)SpringSQL
- Mybatis動態傳入order by 引數的時候不生效的問題解決方案MyBatis
- Mybatis(五)--原始碼分析傳入單個list引數和多個list引數寫法MyBatis原始碼
- Mybatis引數傳遞&註解開發MyBatis
- 使用python指令碼傳遞引數:(三種方式可收藏)Python指令碼
- mybatis關於list的foreach的使用MyBatis
- Spring Boot入門系列(十九)整合mybatis,使用註解實現動態Sql、引數傳遞等常用操作!Spring BootMyBatisSQL
- SQL中除數為0處理情況演示SQL
- 三種“榨乾”企業裝置服裝ERP預算的情況
- 使用聯合索引的一種情況索引
- if 判斷為 false 的 6 種情況False
- JS forEach()第二個引數JS
- 微服務呼叫中出現傳遞過來的物件為空的幾種情況微服務物件
- addEventListener()的第三個引數可以傳物件了dev物件
- kafka 傳送確認引數acks的幾種模式Kafka模式