1.foreach簡(jiǎn)單介紹:
foreach的主要用在構(gòu)建in條件中嗓袱,它可以在SQL語(yǔ)句中進(jìn)行迭代一個(gè)集合籍救。
foreach元素的屬性主要有item,index渠抹,collection蝙昙,open,separator梧却,close奇颠。
item表示集合中每一個(gè)元素進(jìn)行迭代時(shí)的別名,
index指定一個(gè)名字放航,用于表示在迭代過(guò)程中烈拒,每次迭代到的位置,
open表示該語(yǔ)句以什么開(kāi)始广鳍,
separator表示在每次進(jìn)行迭代之間以什么符號(hào)作為分隔符荆几,
close表示以什么結(jié)束,
collection屬性是在使用foreach的時(shí)候最關(guān)鍵的也是最容易出錯(cuò)的赊时,該屬性是必須指定的吨铸,但是在不同情況下,該屬性的值是不一樣的祖秒,主要有一下3種情況:
(1)如果傳入的是單參數(shù)且參數(shù)類型是一個(gè)List的時(shí)候诞吱,collection屬性值為list .
(2)如果傳入的是單參數(shù)且參數(shù)類型是一個(gè)array數(shù)組的時(shí)候,collection的屬性值為array .
(3)如果傳入的參數(shù)是多個(gè)的時(shí)候竭缝,我們就需要把它們封裝成一個(gè)Map了狐胎,當(dāng)然單參數(shù)也可以封裝成map,實(shí)際上如果你在傳入?yún)?shù)的時(shí)候歌馍,在MyBatis里面也是會(huì)把它封裝成一個(gè)Map的握巢,map的key就是參數(shù)名,所以這個(gè)時(shí)候collection屬性值就是傳入的List或array對(duì)象在自己封裝的map里面的key.