在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, ...) 条件。




