java~springboot~ibatis数组in查询的实现
Posted 敢于对过去告一个段落,才有信心掀开新的篇章!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java~springboot~ibatis数组in查询的实现相关的知识,希望对你有一定的参考价值。
在ibatis的xml文件里,我们去写sql语句,对应mapper类的方法,这些sql语句与控制台上没什么两样,但在有些功能上需要注意,如where in
这种从数组里查询符合条件的集合里,需要在xml里进行特别的处理。
<update id="batchUpdate" parameterType="map">
update customer_info set status=#{status},appoint_time=#{appointTime} where
customer_id in
<foreach collection="customerIdArr" item="customerId"
index="index" open="(" close=")" separator=",">
#{customerId}
</foreach>
</update>
我们可以看到,在xml里进行了foreach的遍历,而外部参数是一个集合或者数组的对象,我们在xml对它进行遍历,还是比较方便的。
技巧:在xml里,parameterType是输入参数类型,你可以使用map对象来代替;而resultType是返回类型,如果你没有定义DTO也可以使用map代替,虽然map可以让我们的代码变简洁,当然也有缺陷,就是会写很多弱类型的属性名。
以上是关于java~springboot~ibatis数组in查询的实现的主要内容,如果未能解决你的问题,请参考以下文章
SpringBoot 报错Caused by: org.apache.ibatis.type.TypeException: Could not resolve type alias ‘*****‘
SpringBoot 报错Caused by: org.apache.ibatis.type.TypeException: Could not resolve type alias ‘*****‘
Springboot+mybatis+ibatis mysql链接
Mybatis异常--java.lang.IllegalArgumentException: NO ENUM const class org.apache.ibatis.type.JdbcType.i