mybatis批量update操作的写法,及批量update报错的问题解决方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis批量update操作的写法,及批量update报错的问题解决方法相关的知识,希望对你有一定的参考价值。
mybatis的批量update操作写法很简单,如下:
public interface YourMapper extends BaseMapper<YourExt> {
void updateBatch(@Param("pojos") Collection<YourExt> pojos);
}
<update id="updateBatch" parameterType="java.util.Collection">
<foreach collection="pojos" item = "pojo" separator= ";" >
update your_table t set pt.your_value = #{pojo.yourValue} where pt.id = #{pojo.id}
</foreach>
</update>
在执行过程中报异常,但是sql和参数直接在DB里执行是好的,原因是mysql默认不支持批量更新,需要开发人员主动设置,只需要在你的数据库连接url后面加上
&allowMultiQueries=true
就好了
例如我的数据库连接配置就会变成
以上是关于mybatis批量update操作的写法,及批量update报错的问题解决方法的主要内容,如果未能解决你的问题,请参考以下文章
mybatis---------insert,delete ,update的批量操作
数据库--MyBatis的(insert,update,delete)三种批量操作
on duplicate key update 的用法说明(解决批量操作数据,有就更新,没有就新增)mybatis批量操作数据更新和添加