在 MyBatis 中,<foreach>
是一个非常有用的标签,用于进行集合的遍历操作。它可以在 SQL 语句中动态地生成多个相同或类似的语句片段,以便处理集合中的每个元素。
<foreach>
标签有以下常用的属性:
collection
:指定要遍历的集合对象,可以是 List、Set、Map 等。item
:指定集合中每个元素的别名,可以在标签内部使用该别名来引用当前元素。open
:指定遍历开始时要插入的字符串。close
:指定遍历结束时要插入的字符串。separator
:指定每个元素之间的分隔符。
下面是一个示例,展示了如何在 MyBatis 中使用 <foreach>
标签:
通过用户id删除与之相对应的用户
<delete id="clearUser">delete from user where id in<foreach collection="list" item="id" open="(" close=")" separator=",">#{id}</foreach></delete>
在上面的例子中,clearUser是该 SQL 语句的唯一标识符,SQL 语句使用了 <foreach>
标签来遍历传入的 list
集合,并将其中的每个元素插入到 ()
中作为 ID 的取值,使用 ,
分隔。这样就可以根据传入的 ID 列表查询对应的用户记录。