`
smallvq123
  • 浏览: 35786 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

ibatis标签<iterate>

阅读更多
对ibatis标签<iterate>的理解,在看ibatis文档时,就看见过这个标签,并且还
对其不是很了解,一直没有到现在,在工作中用到了这个标签时,
才去了解了一下这个标签的具体含义。
先把文档中对该标签的介绍贴出来一起分享。
��� Iterate:这属性遍历整个集合,并为List集合中的元素重复元素体的内容。
Iterate的属性:
prepend - 可被覆盖的SQL语句组成部分,添加在语句的前面(可选)
property - 类型为java.util.List的用于遍历的元素(必选)
open - 整个遍历内容体开始的字符串,用于定义括号(可选)
close -整个遍历内容体结束的字符串,用于定义括号(可选)
conjunction - 每次遍历内容之间的字符串,用于定义AND或OR(可选)
iterate>
遍历类型为java.util.List(或数组)的元素。
例子:
<iterate prepend=”AND” property=”userNameList”
open=”(” close=”)” conjunction=”OR”>
username=#userNameList[]#
</iterate>
注意:使用<iterate>时,在List元素名后面包括方括号[]非常重要,方括号[]将对象标记为List,
以防解析器简单地将List输出成String。
我本人对上面<iterate>标签中内容的理解如下:
在生成该条sql语句时,<iterate>标签中的内容是循环生成的,就拿上面的例子来说,生成的sql是
(username=xxx1 or username=xxx2 or username=xxx 3)
而不是(username=xxx1 or xxx2 or xxx3)
再举个例子,如下:
id in
<iterate  prepend="" property="ids"  open="("  close=")"  conjunction="," >
               #ids[]#
  </iterate> 。。。。。。。(1)
  其生成的sql语句是:id in (xx1,xx2,xx3,.....),括号中的(包括括号)是<iterate>标签生成的。
  <iterate>标签虽然是遍历整个集合的,但他也不象我们在java中用到的for一样,一次一次的
  循环生成标签中的内容,而是一次性利用list或数组生成整个可运行的sql语句。
  就好比(1)它生成的sql不可能象这样:id in (xx1)
  id in (xx2)  ,id in (xx3),.....

分享到:
评论

相关推荐

    ibatis标签

    NULL 博文链接:https://duqiangcise.iteye.com/blog/286764

    iBATIS动态标签

    iBATIS动态标签 §&lt;dynamic&gt;标签 §二元标签 §一元标签 §&lt;iterate&gt;标签 § 共同的属性 prepend,open,close &lt;dynamic&gt;标签 §&lt;dynamic&gt;标签 §属性 prepend,open,close 二元条件标签

    ibatis 开发指南(pdf)

    DOCTYPE sqlMapConfig&lt;br&gt;PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"&lt;br&gt;"http://www.ibatis.com/dtd/sql-map-config-2.dtd"&gt;&lt;br&gt;&lt;sqlMapConfig&gt;&lt;br&gt;&lt;settings&lt;br&gt;cacheModelsEnabled="true"&lt;br&gt;...

    Spring高版本对ibatis的支持

    &lt;bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"&gt; &lt;property name="configLocation"&gt; &lt;value&gt;classpath:SqlMapConfig.xml&lt;/value&gt; &lt;/property&gt; &lt;/bean&gt; &lt;bean id=...

    AppFramework_V1.0_New

    720&lt;br&gt;1.59&lt;br&gt;&lt;br&gt;1.53&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;表II –50并发4循环(数据库和测试机分开)&lt;br&gt;&lt;br&gt;对比项目&lt;br&gt;iBatis2.0&lt;br&gt;&lt;br&gt;(毫秒)&lt;br&gt;AppFramework&lt;br&gt;&lt;br&gt;(毫秒)&lt;br&gt;后者前者性能对比&lt;br&gt;&lt;br&gt;(倍)&lt;br&gt;...

    ibatis 开发指南

    也就是说,ibatis&lt;br&gt;并不会为程序员在运行期自动生成SQL 执行。具体的SQL 需要程序员编写,然后通过映&lt;br&gt;射配置文件,将SQL所需的参数,以及返回的结果字段映射到指定POJO。&lt;br&gt;使用ibatis 提供的ORM机制,对业务...

    java文集

    &lt;br&gt;ext学习笔记一&lt;br&gt;小试iBatis&lt;br&gt;RIA(Rich Internet Application)的现状和未来&lt;br&gt;Java应用中域名解析不过期的解决方法&lt;br&gt;Java编程那些事儿45—数组使用示例1&lt;br&gt;一步步熟悉OFBiz&lt;br&gt;用Java做客户端调用.NET写...

    Ibatis 映射文件自动生成器

    功能:当你建立好数据库,写好javabean,就可以用这个工具来为你的javabean和数据库之间做一个映射.&lt;br&gt;当然这个映射只是一个大致的模板,很多时候你可能要稍做修改.但是也为你节约了很多的时间.&lt;br&gt;&lt;br&gt;使用方法:&lt;br&gt;1....

    永恒论坛2.0

    &lt;br&gt;用Mysql和Ibatis实现数据的持久化。&lt;br&gt;系统具有传统论坛的基本功能,更多功能有待进一步的完善。&lt;br&gt;&lt;br&gt;更多请访问:http://www.yyhweb.com&lt;br&gt;由由华网版权所有&lt;br&gt;作者:stephen&lt;br&gt;QQ:7348002&lt;br&gt;

    Spring In Action中文 第一部分

    &lt;br&gt; 本书介绍了Spring背后的原理,引领你迅速进入对框架的体验之中。结合简短代码片断和贯穿全书的持续示例,本书向你展示了如何创建简单有效的J2EE应用系统。你将看到如何使用先进的开源工具解决持久层问题,以及...

    Spring In Action中文 第七部分

    &lt;br&gt;本书内容:&lt;br&gt;·使用Hibernate、JDO、iBatis、OJB以及JDBC开发持久层;&lt;br&gt;·声明式事务与事务管理;&lt;br&gt;·与其他Web框架集成:Struts、WebWork、Tapestry、Velocity;&lt;br&gt;·访问J2EE服务,如JMS和EJB;&lt;br&gt;·...

    Spring与iBATIS的集成

    Spring与iBATIS的集成 &lt;br&gt;iBATIS似乎已远离众说纷纭的OR框架之列,通常人们对非常流行的Hibernate情有独钟。但正如Spring A Developer's Notebook作者Bruce Tate 和Justin Gehtland所说的那样,与其他的OR框架相比...

    Spring Project Bulder

    这是一个基于b/s模式的spring web工程代码生产工具....&lt;br&gt;&lt;br&gt;涉及技术:spring mvc,spring ioc+aop,spring dao+jdbc/ibatis/hibernate,log4j,jsp/velocity/freemareker&lt;br&gt;&lt;br&gt;环境:tomcat+jdk1.50+mysql5.0测试成功

    Ibatis 配置文件之一

    Ibatis的主要配置文档,可以方便大家学习使用

    spring2.5+struts2+ibatis2.3

    今天学习,包含所有的jar包,所以有点大&lt;br&gt;spring2 struts2 ibatis mssql&lt;br&gt;共同学习啊,入门不错,我在xp下运行正常

    SSI框架整合实例

    &lt;bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean"&gt; &lt;property name="dataSource" ref="dataSource"/&gt; &lt;property name="configLocation"&gt; &lt;value&gt;classpath:...

    ibatis中iterate的例子

    ibatise中关于iterate的用法的例子

    iBatis SQL Maps开发指南.pdf

    &lt;properties&gt;元素 &lt;setting&gt;元素 &lt;typeAlias&gt;元素 &lt;transactionManager&gt;元素 &lt;datasource&gt;元素 &lt;sqlMap&gt;元素 SQL Map XML映射文件 Mapped Statements Statement的类型 SQL 语句 自动生成的主键 存储过程 ...

    Spring Framework 开发参考手册

    使用TransactionProxyFactoryBeans, Web应用是完全事务性的,就像使用EJB提供的那种&lt;br&gt;容器管理的事务一样. 所有的你的自定义业务逻辑可以通过简单的POJO来实现,并通过Spring的Dependency Injection容器进行管理...

Global site tag (gtag.js) - Google Analytics