在 MyBatis 中,可以使用 <foreach>
標(biāo)簽來循環(huán)多個(gè)值。
假設(shè)你有一個(gè) SQL 查詢語句,需要根據(jù)多個(gè)值查詢數(shù)據(jù),你可以使用 <foreach>
標(biāo)簽來實(shí)現(xiàn)循環(huán)。以下是一個(gè)示例:
<select id="selectUsers" parameterType="java.util.List" resultType="User">
SELECT * FROM users WHERE id IN
<foreach item="item" collection="list" open="(" separator="," close=")">
#{item}
</foreach>
</select>
在上述示例中,<foreach>
標(biāo)簽中的 collection
屬性指定了要循環(huán)的值,這里使用了一個(gè)名為 list
的參數(shù)作為輸入。<foreach>
標(biāo)簽中的 item
屬性指定了每次循環(huán)時(shí)的當(dāng)前元素,這里使用了一個(gè)名為 item
的變量。<foreach>
標(biāo)簽中的 open
屬性指定了循環(huán)開始的字符,separator
屬性指定了每個(gè)元素之間的分隔符,close
屬性指定了循環(huán)結(jié)束的字符。在循環(huán)體內(nèi)部,使用 #{item}
表達(dá)式來引用當(dāng)前元素。
這樣,當(dāng)調(diào)用 selectUsers
方法并傳入一個(gè)包含多個(gè)值的列表時(shí),MyBatis 將會(huì)將每個(gè)值替換到對應(yīng)的位置,然后執(zhí)行查詢語句。