Mybatis使用<foreach collection="***" item="**" open="(" separator="," close=")">问题

原创 2016年06月02日 09:54:32

昨天在使用:

<foreach collection="userTypes" item="userType" open="(" separator="," close=")">

时出现一个错误,提示SQL错误,检查发现是在“<foreach>”前面的<if></if>判断语句中使用非空字符串判断,而item只接受list,数组和map,所以出错!

<if test="userTypes != null">
			AND USERTYPE in
   		 	<foreach collection="userTypes" item="userType" open="(" separator="," close=")">
   				#{userType}
   			</foreach>
		</if>

原始是:

<if test="userTypes != null and '' != userTypes ">
			AND USERTYPE in
   		 	<foreach collection="userTypes" item="userType" open="(" separator="," close=")">
   				#{userType}
   			</foreach>
		</if>



                    

MyBatis批量添加,修改和删除

1. 批量添加元素session.insert(String string,Object o) public void batchInsertStudent() { List ls = new A...
  • yin_jw
  • yin_jw
  • 2014年11月09日 09:05
  • 4693

<foreach collection="list" item="item" index="index" open="" close="" separator=";">属性的含义

foreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合。 foreach元素的属性主要有 item,index,collection,open,separator,close。...
  • qinyf2015
  • qinyf2015
  • 2017年12月01日 17:22
  • 275

mybatis 中 foreach collection的三种用法

oreach的主要用在构建in条件中,它可以在SQL语句中进行迭代一个集合。 foreach元素的属性主要有 item,index,collection,open,separator,close。 ...
  • qq_24084925
  • qq_24084925
  • 2016年12月21日 19:35
  • 6873

Mybatis最入门---动态查询(foreach)

本文,我们来介绍使用Mybatis提供的标签实现我们某些循环增改删差的需求。官方文档中的内容过于简陋,于是,博主筛选出比较全面讲述foreach用法的的内容,并且配有例子。希望各位看官能够手动敲一遍下...
  • qi49125
  • qi49125
  • 2016年08月22日 16:00
  • 1911

【MyBatis】Foreach语句

Foreach包含的属性有:collection、index、open、close、separator。   index:循环过程中产生的索引值。 open:Foreach以什么开始。 close:F...
  • f627422467
  • f627422467
  • 2016年05月18日 09:28
  • 803

mybatis <forEach>标签的使用

MyBatis标签的使用 你可以传递一个 List 实例或者数组作为参数对象传给 MyBatis。当你这么做的时候,MyBatis 会自动将它包装在一个 Map 中,用名称作为键。List 实例将会以...
  • m0_37204491
  • m0_37204491
  • 2017年05月08日 22:43
  • 577

mybatis <forEach>标签的使用

MyBatis标签的使用 你可以传递一个 List 实例或者数组作为参数对象传给 MyBatis。当你这么做的时候,MyBatis 会自动将它包装在一个 Map 中,用名称作为键。List 实例...
  • qq_34107571
  • qq_34107571
  • 2017年09月04日 10:53
  • 84

mybatis <foreach>标签

在mybatis的mapper配置文件中,可以利用标签实现sql条件的循环,可完成类似批量的sql mybatis接受的参数分为:(1)基本类型(2)对象(3)List(4)数组(5)Map   ...
  • gchonghavefun
  • gchonghavefun
  • 2012年11月22日 22:09
  • 56957

Mybatis foreach 批量操作

foreach属性 属性 描述 item 循环体中的具体对象。支持属性的点路径访问,如item.age,item.info.details。 具体说明:在list...
  • jason5186
  • jason5186
  • 2014年11月07日 17:38
  • 24405

mybatis foreach标签的解释 与常用之处

情景:查询数据库中文章的相关文章   文章为一个表 字段tags为相关文章字符串中间用','逗号进行啦分割 查询完一个文章后可以把tags字段构造为一个List 然后利用这个集合作为条件来查询  ...
  • bareheadzzq
  • bareheadzzq
  • 2012年09月21日 23:25
  • 165349
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Mybatis使用<foreach collection="***" item="**" open="(" separator="," close=")">问题
举报原因:
原因补充:

(最多只允许输入30个字)