zoukankan      html  css  js  c++  java
  • ibatis实现Iterate的使用

    <iterate  

        property=""   /*可选,   从传入的参数集合中使用属性名去获取值,   这个必须是一个List类型,   否则会出现OutofRangeException,   通常是参数使用java.util.Map时才使用,  如果传入的参数本身是一个java.util.List, 不能只用这个属性.    /  

        conjunction="" /*可选,    iterate可以看作是一个循环,   这个属性指定每一次循环结束后添加的符号,   比如使每次循环是OR的, 则设置这个属性为OR*/  

      open="" /*可选, 循环的开始符号*/  

        close="" /*可选, 循环的结束符号*/  

        prepend="" /*可选, 加在open指定的符号之前的符号*/  

    >

    1.查询

    <!-- Iterate的使用,根据多个匹配条件查询,类似in(a,b,c)-->

    <select id="selectByIterate" parameterClass="java.util.List" resultClass="user">

     SELECT * FROM USERS WHERE USER_ID IN

     <iterate conjunction="," open="(" close=")">

      #ids[]#

     </iterate>

    </select>

    注意:不要property属性,否则报错。String index out of range: -1

            2. 但是,若参数有多个传入的一个是List,另一个不是, parameterClass为map时,需要property属性区分要遍历的  集合。

    2.删除

    <!-- 批量删除对象的时候,iterate不要property属性 -->

    <delete id="delStudybook" parameterClass="java.util.List">

     delete FROM STUDYBOOK WHERE ID IN

     <iterate conjunction="," open="(" close=")">

      #bookList[]#

     </iterate>

    </delete>

    http://hongzhguan.iteye.com/blog/1222353

  • 相关阅读:
    Vue模板
    一个人的旅行
    o2o家庭助手demo
    学习html5 app项目开发
    我最近的一段时间技术总结
    我最近的工作、生活状态
    swift学习初步(四)-- 函数
    swift学习初步(三)--控制流操作
    swift学习(二)--基本运算符、字符串、集合操作
    Swift学习初步(一)
  • 原文地址:https://www.cnblogs.com/hym-pcitc/p/5695846.html
Copyright © 2011-2022 走看看