<foreach>標(biāo)簽有循環(huán)的功能镇饺,可以用來生成有規(guī)律的SQL語(yǔ)句用僧,主要屬性有:
item:表示集合每一個(gè)元素進(jìn)行迭代時(shí)的別名
index:表示在迭代過程中,每次迭代到的位置
open:表示該語(yǔ)句已什么開始
separator:表示每次迭代之間以什么符號(hào)作為分隔
close:表示該語(yǔ)句已什么結(jié)束
collection:需要迭代的變量
<select id="selectPostIn" resultType="domain.blog.Post"> SELECT * FROM POST P WHERE ID in <foreach item="item" index="index" collection="list" open="(" separator="," close=")"> #{item} </foreach></select>
foreach 元素的功能是非常強(qiáng)大的嚷那,它允許你指定一個(gè)集合咆耿,聲明可以用在元素體內(nèi)的集合項(xiàng)和索引變量。它也允許你指定開閉匹配的字符串以及在迭代中間放置分隔符故硅。這個(gè)元素是很智能的庶灿,因此它不會(huì)偶然地附加多余的分隔符。
注意 你可以將一個(gè) List 實(shí)例或者數(shù)組作為參數(shù)對(duì)象傳給 MyBatis吃衅,當(dāng)你這么做的時(shí)候往踢,MyBatis 會(huì)自動(dòng)將它包裝在一個(gè) Map 中并以名稱為鍵。List 實(shí)例將會(huì)以“l(fā)ist”作為鍵徘层,而數(shù)組實(shí)例的鍵將是“array”峻呕。
到此我們已經(jīng)完成了涉及 XML 配置文件和 XML 映射文件的討論。下一部分將詳細(xì)探討 Java API趣效,這樣才能從已創(chuàng)建的映射中獲取最大利益瘦癌。