zoukankan      html  css  js  c++  java
  • mybatis记录随便(三)foreach实现in查询

    foreach属性:

    <foreach collection="list" open="(" close=")" separator="," item="id"  index="i" >
      #{id}
    </foreach>

    • collection 必填,值为要选代循环的属性名。这个属性值的情况有很多。 
    • item:变量名,值为从法代对象中取出的每一个值。 
    • index :索引的属性名,在集合数组情况下值为当前索引值 当选代循环的对象是 Map类型时,这个值为 Map 的 key (键值)。 
    • open:整个循环内容开头的字符串
    • close 整个循环内容结尾的字符串。
    • separator :每次循环的分隔符

    collection的属性设置方法 (list、array等):
    1 . 只有一个数组参数或集合参数 

    当参数类型为集合的时候,默认会转换为 Map 类型,井添加一个 key 为 collection的值,如果参数类型是 List 集合,那么就继续添加一个 key 为 list的值。

    这样,当 collection=" list ”时, 就能得到这个集合,并对它进行循环操作。

    当参数类型为数组的时候,也会转换成 Map 类型,默认的 key 为 array

    使用数组参数时,就需要把 foreach 标签中的 collection 属性值设置为 array

    上面提到的是数组或集合类型的参数默认的名字。推荐使用@ Par am 来指定参数的名字 ,这时 collection 就设置为通过@ Param 注解指定的名字

    2.多个参数

    当有多个参数的时候,要使用@ Param 注解给每个参数指定一个名字,因此将 collection 设置为@ Param 注解指定的名字即可 。

    3.参数是map

    使用 Map 和使用@ Param 注解方式类似,将 collection 指定为对应 Map 中的 key 即可

    4.参数是一个对象

    这种情况下指定为对象的属性名即可。当使用对象内多层嵌套的对象时,使用属性.属性(集合和数组可以使用下标取值)的方式可以指定深层的属性值。

     

  • 相关阅读:
    Mac 修改hosts
    MTK平台系统稳定性分析
    由MTK平台 mtkfb 设备注册疑问引发的知识延伸--ARM Device Tree
    mtk display 架构
    【6572】关于mtk平台display模块的学习探讨
    如何用Bugzilla系统管理产品研发过中相关需求和bug
    Bugzilla 系统企业应用案例
    MT6753平台一项目不同手机最低亮度存偏差问题分析过程
    嵌入式驱动实习生试题(答案)
    嵌入式驱动实习生试题
  • 原文地址:https://www.cnblogs.com/lovechengyu/p/11246600.html
Copyright © 2011-2022 走看看