最近开发中遇到批量更新状态的操作,根据数据的id变更每条数据的状态
前台传入ids的字符串,后台拆分成String[] 的数组类型
这样在mapper文件中可以不指定传参类型,然后利用<foreach>标签,遍历每一个id
具体写法如下:
<update id="updateByIds" >
update TP_MESSAGE
isread = 1,
<where> id
<foreach collection="array" item="id" open="in (" close=")"
separator=",">
#{id}
</update>
这里需要特别注意collection属性要固定写成array,然后sql的语法,我们在这里是不需要写in关键字的。