批量操作时应该在java里对删除条件遍历还是应该把删除条件放到list请求数据库?

如题所示。有一个对表单进行批量操作的接口,是利用id作条件对数据库进行update操作。这时候应该将条件id遍历然后循环去更新数据库还是应该放到list里面作为in的条件一次性更新数据库呢?

前提是数据量比较小,时间差异不大。这两种方法各有什么好处或者没区别?

<update id="updateBatch" parameterType="java.util.List">
        update mysql_table
        <trim prefix="set" suffixOverrides=",">
            <trim prefix="status =case" suffix="end,">
                <foreach collection="list" item="item" index="index">
                     when id=#{item.id} then #{item.status}
                </foreach>
            </trim>
        </trim>
        where id in
        <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
            #{item.id,jdbcType=BIGINT}
        </foreach>
 </update>

个人认为这样比较好,第一种多次数据连接和释放会造次连接超时等问题。第二种比较适合

第一种方式,不太可取,会多次访问数据库

建议第二种,如果是mybatis的话可以用动态语句,非常实用