Mybatis中遍历List、Set、Array、Map
来源:互联网 发布:淘宝店铺优惠卷图片 编辑:程序博客网 时间:2024/06/04 20:12
关于Mybatis中遍历集合的整理
使用Mybatis多了,自然会碰见各种在Mapper文件遍历集合的问题,特整理一份记录以便查看。个人觉得Mybatis中的foreach标签属性 说清楚就ok了。
foreach中的各种属性整理如下(先从简单的说):
index : 指定一个名称,什么意思呢?就是和java中的标准for循环中的i是一个意思,我们定义成index,在语句中可以用#{index}取出对应的下标。既然是下标那就是从零开始啦。
open : 指定循环开始前的开始符一般就是“(”
close : 指定循环结束后的结束符一般就是“)”
ps –> 如果不指定 open close属性 mybatis默认不会添加,情景就是批量插入数据时,传入的参数为List泛型为map,由于批量插入时是这种格式: insert into(f1…fn) values(v1…vn),(m1…mn),(j1…jn)这时候如果定义 open close 就会出错。
separator :循环中元素的分割符一般指定为“,”
item :是循环中遍历出的元素,如果传入的参数为list/set/array,item是list/set/array中的元素,如果传入的是list泛型为map的 item就是map的entry,需要通过key来取value,如果key为纯字符也就是没有“.”、“:”等特殊字符可以直接用“.”来取值,如果有请用”[]”取值 []中的字段不要加引号、不要引号、不要引号。
collection : 终于说到它了,关于这个网上有很多资料,总是一二三种情况。在我看来我们完全没有必要去记那些规则,如果是多个参数mybatis会封装成map ,该属性的值就设置为map中集合的key值就可以了,如果是单参数建议也封装进map就ok了 ,世界一下就清净了。
ps –>为什么要用map来封装参数呢,想想那天业务需要你加几个参数的时候你要怎么处理呢。为啥要用set呢,因为去重。
- Mybatis中遍历List、Set、Array、Map
- Mybatis 中遍历map 参数中的 list 和 array 属性
- 遍历list map set
- List,Map,set,Array简析
- Array、List、Set、与Map
- mybatis传递List,Array,Map
- Java中 set、 list、 array、 Map相互转换
- java中map,set,list,array相互转化
- Java中array、Set、List和Map的比较总结
- jstl 遍历 List,Set,Map
- java list set map 遍历
- set,list,map的遍历
- Java中 List Map Array 的复制遍历方法
- java中List、Set、Map集合的遍历方法总结
- java中list、set、map的各种遍历方法
- Java集合框架中Set、List、Map的遍历方法
- java中List、Set、Map集合的遍历方法总结
- Java中List、Map、Set的遍历方式
- 遗传算法中几种交叉算子小结
- RadioButton
- java泛型
- 数据结构:图
- 信号处理第四课:一个向量用另外一个向量来表达
- Mybatis中遍历List、Set、Array、Map
- 喷水装置(一)
- 算法-微软面试100题-4张红色的牌和4张蓝色的牌问题
- 大数据入门之旅
- Android 浏览网页:WebView 嵌入浏览器(浏览历史返回、自定义加载失败界面、支持缩放、获取标题栏)
- XAMPP禁止目录浏览的方法
- 剑指offer 面试题8 旋转数组的最小数字
- 数据结构:深度优先与广度优先
- 下拉树(ztree)的简单使用