薄荷味儿的荔枝

导航

mybatis中<foreach>标签的使用

标签太多,记一下不是特别常用的标签~留着脑袋瓜不机灵的时候看!

<foreach>标签  该标签的作用是遍历集合类型的条件 

<select id="countByUserList" parameterType="list">
  SELECT COUNT(*) FROM users
  WHERE user_id IN
  <foreach item="userList" collection="list" separator="," open="(" close=")" index="">
    #{item.userId}
  </foreach>
</select>

注:SELECT COUNT(*) FROM users WHERE user_id IN(1,2,3)

* collection = "array" / collection = "list" 

  是数组类型,还是集合类型(一共有三种类型,分别为List, [](array), Map三种)该参数为必选。

-----------------------------------------------------------------------------------------------------------

* item = "userList"

  循环体中的具体对象,在list和数组中是其中的对象,在map中是value。 该参数为必选。

-----------------------------------------------------------------------------------------------------------

* open = "("  separator = ","  close = ")"

  开始符号,分隔符号,结束符号(常用在in(),values()时)该参数可选。

-----------------------------------------------------------------------------------------------------------

* index =  " " 

  在list和数组中,index是元素的序号,在map中,index是元素的key,该参数可选。

-----------------------------------------------------------------------------------------------------------

* separator = ","

  元素之间的分隔符。例如在in()的时候,separator=","会自动在元素中间用“,“隔开,避免手动输入逗号导致sql错误,如in(1,2,)这样。该参数可选。

 

posted on 2018-09-18 11:43  薄荷味儿的荔枝  阅读(2910)  评论(0编辑  收藏  举报