mybatisplus批量更新插入

数据为多条数据,根据特定字段,做插入更新,即数据库有数据就更新(update);没有数据则执行insert操作;

mybatisplus有没有合适的方法,或者原生mybatis方法

自带的 saveOrUpdateBatch() 方法可以满足你的需求

saveOrupdateBatch()方法是判断你传入的参数中主键字段是否有值,有就执行update语句,没有就是insert,但是并不知道数据库有没有这条数据,比如传参
[{“id”=“1”,“name”="张三"},{“id”=“2”,“name”=“李四”}],此时你的数据库有id=1的数据,name是 张三01,那么就会被更新为张三;但是并没有id=2的数据,还是会执行update user set name = “李四” where id =2,所以id=2这条数据并没有新增