在MyBatis中,<apply>
元素是一個實用的元素,用于在動態SQL中重復執行一個片段。<apply>
元素遍歷一個集合,并為集合中的每個元素執行指定的SQL代碼塊。它常常與<foreach>
元素結合使用,用于動態構建SQL語句。
下面是一個示例,演示了如何使用 <apply>
元素:
<select id="selectUsers" resultType="HashMap">
SELECT *
FROM users
<where>
<apply>
<if test="userIds != null">
AND id IN
<foreach item="userId" collection="userIds" separator="," open="(" close=")">
#{userId}
</foreach>
</if>
</apply>
</where>
</select>
在上面的示例中,<apply>
元素遍歷了一個名為 userIds
的集合,將集合中的元素拼接成一個IN條件,用于動態構建SQL語句中的 AND id IN (userId1, userId2, ...)
條件。