mybatis 如何判断数组是否为空,空时不循环数组

mybatis代码--------------------------------------------<iftest="search.dataforArray!=nu... mybatis代码
--------------------------------------------
<if test="search.dataforArray != null">
and datefor in
<foreach item="search.dataforArray" index="index" collection="search.dataforArray" open="(" separator="," close=")">#{search.dataforArray}</foreach>
</if>
---------------------------------------------
如果数组为空时出现错误
nested exception is org.apache.ibatis.builder.BuilderException: The expression 'search.dataforArray' evaluated to a null value.

请问如何修改呢?
展开
 我来答
余&#x4495;鱼
2018-03-31 · TA获得超过1万个赞
知道小有建树答主
回答量:63
采纳率:100%
帮助的人:1万
展开全部

答案:

  1. &lt;if test="search.dataforArray != null"&gt; 
    and datefor in ;

  2. &lt;foreach item="item" index="index";

  3. collection="search.dataforArray";

  4. open="("separator="," close=")"&gt;#{item}&lt;/foreach&gt; 

  5. &lt;/if&gt。

循环体中的具体对象:支持属性的点路径访问,如item.age,item.info.details,具体说明:在list和数组中是其中的对象,在map中是value,collection,要做foreach的对象,作为入参时,List<?>对象默认用list代替作为键,数组对象有array代替作为键,Map对象没有默认的键。当然在作为入参时可以使用@Param("keyName")来设置键,设置keyName后,list,array将会失效。
除了入参这种情况外,还有一种作为参数对象的某个字段的时候。

待春去秋来时
2014-09-05
知道答主
回答量:8
采纳率:100%
帮助的人:9.4万
展开全部
试试
<if test="search.dataforArray != null">
and datefor in
<foreach item="item" index="index" collection="search.dataforArray" open="(" separator="," close=")">#{item}</foreach>
</if>
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
不羁的_VIP_
2018-01-24 · TA获得超过174个赞
知道小有建树答主
回答量:294
采纳率:31%
帮助的人:53.2万
展开全部
这个<if test="search.dataforArray != null">
改为:
<if test="search.dataforArray != null and search.dataforArray !=''" >
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
像兔子蹦蹦跳跳
2018-01-24
知道答主
回答量:2
采纳率:100%
帮助的人:1744
展开全部
朋友,请问最后是怎么解决的呢 这样貌似也不行 为空的时候还是进入了下面的条件语句
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
非博士CC
2017-11-06 · TA获得超过310个赞
知道小有建树答主
回答量:212
采纳率:0%
帮助的人:30.2万
展开全部
<if test="search.dataforArray != null and search.dataforArray.length>0 ">
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式