zoukankan      html  css  js  c++  java
  • ibatis中iterate的用法(conjunction="or" ",")

    例子一

    查询条件dto

    public class queryCondition
    {
     private String[] stuIds;
     private String name;
    }


    查询sqlMap

    <select id="selectStu" parameterClass="cn.xy.queryCondition" resultClass="cn.xy.Student">
     select id,name from student
     <dynamic prepend="where">
      <isNotNull property="stuIds" prepend="and">
       <iterate property="stuIds" open="id in (" close=")" conjunction=",">
        #stuIds[]#
       </iterate>
      </isNotNull>
      <isNotNull property="name" prepend="and">
       name like '%$name$%'
      </isNotNull>
     </dynamic>
    </select>


    在查询条件中有一个数组stuIds,在动态标签中进行遍历,看每一个student的id是否在该数组中。

    发出的语句 select id,name from student where  id in ( ? , ?) ...  

    例子二 

    查询条件dto

    public class queryCondition
    {
     private List<Student> lst;
     private String name;
    }


    查询sqlMap

    <select id="selectStu" parameterClass="cn.xy.queryCondition" resultClass="cn.xy.Student">
     select id,name from student
     <dynamic prepend="where">
      <isNotNull property="lst" prepend="and">
       <iterate property="lst" open=" (" close=")" conjunction="or">
        id = #lst[].id#
       </iterate>
      </isNotNull>
      <isNotNull property="name" prepend="and">
       name like '%$name$%'
      </isNotNull>
     </dynamic>
    </select>

    发出的语句 select id,name from student where  (id = ?   or   id = ?)...

  • 相关阅读:
    3D文字菜单变换
    妙味课堂作业20160113(优化版)
    pop up layer loading
    妙味课堂作业20160113
    妙味课堂20160112js实例仿新浪菜单
    js面向对象初探
    sea.js demo
    注册ASP.NET
    JDK1.6 环境配置
    JDK1.7环境配置
  • 原文地址:https://www.cnblogs.com/Struts-pring/p/5127510.html
Copyright © 2011-2022 走看看