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

<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,)这样。该参数可选。

mybatis中<foreach>标签的使用的更多相关文章

  1. mybatis的foreach标签

    今天写sql发现了一点问题,乱弄了好久算是搞定了.关于mybatis的批量插入使用foreach插入形式为: insert into role_privilege( role_id, privileg ...

  2. mybatis中foreach的用法(转)

    foreach一共有三种类型,分别为List,[](array),Map三种. foreach属性 属性 描述 item 循环体中的具体对象.支持属性的点路径访问,如item.age,item.inf ...

  3. mybatis中<include>标签的作用

    MyBatis中sql标签定义SQL片段,include标签引用,可以复用SQL片段 sql标签中id属性对应include标签中的refid属性.通过include标签将sql片段和原sql片段进行 ...

  4. mybatis动态sql中foreach标签的使用

    foreach标签主要用于构建in条件,他可以在sql中对集合进行迭代.如下: <delete id="deleteBatch"> delete from user w ...

  5. 谈一下思考,关于mybatis中<foreach collection="list">中list得来的原因 没看到官方说明

    <foreach> 是在sql语句中进行多个id查询 时用到的,因为mybatis代替jdbc和hibernate, 使用 在xml文件中编写sql语句,这是一个标签文件.然后在 dao层 ...

  6. MyBatis中foreach循环的用法

    一.在了解foreach之前,先了解一下mybatis传入参数及parameterType 1.我们在Dao层向对应的mapper.xml文件传递参数时,可以传递的参数有: ①.基本数据类型(如int ...

  7. mybatis中foreach使用

    mybatis中的<foreach collection="list" item="item" index="index" open= ...

  8. mybatis 中 foreach 的性能问题及调优

    1.mybatis中最初的sql语句 SELECT 参数1, 参数2, 参数3 FROM 表 WHERE 条件参数1 in <foreach item="item" inde ...

  9. mybatis中foreach参数过多效率很慢的优化

    foreach 后面in 传入的参数有1万条,#和$是有效率区别的,$的效率远高于#,上篇文章做了比较. 但没达到我的理想结果. 1. 更改方式,把foreach 去掉,改成拼装方式, 参数直接拼装成 ...

随机推荐

  1. 【转载】RESTful 架构风格概述

    本文转载自https://blog.igevin.info/posts/restful-architecture-in-general/ 在移动互联网的大潮下,随着docker等技术的兴起,『微服务』 ...

  2. 剑指offer:链表中倒数第k个结点

    问题描述 输入一个链表,输出该链表中倒数第k个结点. 解题思路 两个指针都指向头结点,第一个指针先移动k-1个结点,之后两指针同时移动,当第一个指针到链表尾的时候,第二个指针刚好指向倒数第k个结点. ...

  3. JQ清空select的已选择状态

    $('#payment').find("option:selected").attr("selected", false);

  4. 渐变UI

    1.h #import <UIKit/UIKit.h> @interface UIView (Gradient) /* The array of CGColorRef objects de ...

  5. Date中before和after方法的使用

    Date1.after(Date2),当Date1大于Date2时,返回TRUE,当小于等于时,返回false: Date1.before(Date2),当Date1小于Date2时,返回TRUE,当 ...

  6. Linux系统时间, 硬件BIOS时间的校准与同步

    #宿主机系统时间: date #宿主机时间校准方法: yum install -y ntpdate ntpdate -u ntp.api.bz #centos查看设置系统时区:(可能没有) cat / ...

  7. 简单了解 DLL中, .def 文件及C#调用C++方法

    DLL中导出函数的声明有两种方式: 1.在函数声明中加上__declspec(dllexport) //以下内容为 .h 文件中的内容 //向外界提供的端口 extern"C" _ ...

  8. Keepalive配置说明

    配置文件 [root@lb01 keepalived]# cat keepalived.conf ! Configuration File for keepalived global_defs { n ...

  9. python 数据分类赋值

    问题描述:在数据预处理时,往往需要对描述性数据进行分类赋值或对数据进行分级赋值. 首先,会想到用for循环,依次判断赋值: for n in range(len(data1)): print(n) i ...

  10. Linux Mint 18.1 MAME 成功运行

    折腾了一个下午,终于成功可以用手柄接着chromebook 来玩街机游戏了(灌篮高手.拳皇.突击骑兵) 在http://sdlmame.wallyweek.org/download/ 下载对应的mam ...