mybatis 批量新增 批量修改
使用hutool分割list
import cn.hutool.core.collection.CollUtil;public ReturnT<Integer> batchInsert() {List<SysUserDTO> list = new ArrayList<>();for (int i = 0; i < 100; i++) {SysUserDTO sysUserDTO = new SysUserDTO();sysUserDTO.setUsername("admin" + i);sysUserDTO.setPassword("12345" + i);sysUserDTO.setUserAccount("admin" + i);sysUserDTO.setEmail("admin" + i + "@163.com");sysUserDTO.setCreateBy("admin");list.add(sysUserDTO);}int size = 100;int total = 0;List<List<SysUserDTO>> lists = CollUtil.splitList(list, size);for (List<SysUserDTO> sysUserDTOS : lists) {int rows = baseMapper.insertBatch(sysUserDTOS);total += rows;}return new ReturnT<>(total);}public ReturnT<Integer> updateBatch() {List<SysUserDTO> list = new ArrayList<>();for (int i = 0; i < 100; i++) {SysUserDTO sysUserDTO = new SysUserDTO();sysUserDTO.setUsername("admin200" + i);sysUserDTO.setPassword("12345" + i);sysUserDTO.setUserAccount("admin" + i);sysUserDTO.setEmail("admin" + i + "@163.com");sysUserDTO.setCreateBy("admin");list.add(sysUserDTO);}int size = 100;int total = 0;List<List<SysUserDTO>> lists = CollUtil.splitList(list, size);for (List<SysUserDTO> sysUserDTOS : lists) {int rows = baseMapper.updateBatch(sysUserDTOS);total += rows;}return new ReturnT<>(total);}
List<List<SysUserDTO>> lists = CollUtil.splitList(list, size);
1. 批量新增
<insert id="insertBatch">INSERT INTO `sys_user`(`username`, `password`, `user_account`, `email`, `salt`, `phone`, `create_time`,`create_by`)VALUES<foreach collection="list" item="sysUser" separator=",">(#{sysUser.username}, #{sysUser.password}, #{sysUser.userAccount},#{sysUser.email},#{sysUser.salt},#{sysUser.phone},now(),#{sysUser.createBy})</foreach></insert>
2. 批量更新
需要建唯一索引
<insert id="updateBatch">INSERT INTO `sys_user`(`username`, `password`, `user_account`, `email`, `salt`, `phone`, `create_time`,`create_by`)VALUES<foreach collection="list" item="sysUser" separator=",">(#{sysUser.username}, #{sysUser.password}, #{sysUser.userAccount},#{sysUser.email},#{sysUser.salt},#{sysUser.phone},now(),#{sysUser.createBy})</foreach>ON DUPLICATE KEY UPDATEid=VALUES(id),username = VALUES(username),password = VALUES(password),user_account = VALUES(user_account),email = VALUES(email),salt = VALUES(salt),phone = VALUES(phone),create_time = VALUES(create_time),create_by = VALUES(create_by)</insert>
mybatis 批量新增 批量修改相关推荐
- MyBatisPlus批量新增或修改执行器
@Component public class ExecutorBatch {@Autowiredprivate SqlSessionTemplate sqlSessionTemplate;/*** ...
- postgres批量新增,修改
项目中用到批量新增,修改,这里记录一下: 1.批量新增,当遇到冲突时,进行修改 sql: insert into table_name(id, col1) values(unnest(array[1, ...
- mybatis-plus的批量新增/批量更新以及问题
批量新增/删除 1.代码中foreach insert/update 2.多线程foreach insert/update 3.mybatis xml中foreach 4.通过自定义 SQL注入器扩展 ...
- mybatis plus 新增,修改
simple curd 1. mybatis-plus 2. 以用户表为例,德莫 1. mybatis-plus mybatis的升级版,curd的奇淫技巧. MyBatis-Plus(简称 MP)是 ...
- Mybatis Plus重写批量新增和批量删除
批量新增: import com.baomidou.mybatisplus.core.injector.AbstractMethod; import com.baomidou.mybatisplus. ...
- Javaweb15==mysql+mybatis+servlet+axios+fasetjson+vue+elementUI前后端分离,实现列表后端分页、模糊查询后分页、新增、单一/批量删除、修改
难点:模糊查询后再次分页,并可以选择页数. 最终环境配置: maven3.8:依赖包管理 IDEA2021+JDK8+mysql connector java5+Mysql5+mybatis3.5:从 ...
- MyBatis + Oracle 实现批量新增和批量修改
MyBatis + Oracle 实现批量新增(基于序列化自增长主键) mapper 接口 void batchInsert(List<ASingleProject> list); map ...
- mybatis高级查询,批量新增
review sql脚本 实体类 sql watch out mapper mapper test 之前的比较分散,自己用... sql脚本 -- auto-generated definition ...
- 基于ruoyi+vue+elementUI实现列表,新增,附件上传,tab+springBoot+mybatis+oracle序列+批量新增
基于ruoyi+vue+elementUI实现列表,新增,附件上传,tab+springBoot+mybatis+oracle序列+批量新增 页面效果 列表页面 新增页面 详情页面 代码实现 列表+新 ...
- Mybatis-plugs 批量新增及批量修改、IN、CASE WHEN操作
1.1 基本介绍 Mybatis-plugs 批量新增及批量修改.IN.CASE WHEN 查询,简单,适用,最近用到了,那就留下点痕迹,免得下次用到再去找 <foreach> 标签里面的 ...
最新文章
- 戴尔电脑管家_2020年笔记本电脑推荐指南:笔记本电脑应该怎么选?什么牌子的笔记本电脑更值得入手?...
- Linux 学习手记(1):命令行BASH的基本操作
- 美利好车的微服务实践
- SQL Server XML性能优化(Best Practices)
- html子布局不超出父布局,详解flex布局中保持内容不超出容器的解决办法
- 【Java】Java 集合相关的博客积累
- php 跟踪邮件,php – 电子邮件跟踪 – GMail
- 堆栈的缓冲区溢出进不了系统_一文理解缓冲区溢出
- Android之Surface/Window/View/SurfaceView区别
- Linux主机驱动与外设驱动分离思想 1
- Mysql索引优化和锁机制
- Yapi 可视化接口管理平台部署文档
- mahout安装和测试
- 自学Java年薪20万的学习方法,大佬教你如何去学
- luckysheet实现在线编辑Excel
- 怎么把path里oracle地址删掉,path路径删除了怎么办
- win7 64位 32位旗舰版下载
- 拼多多运营该怎么做你知道吗?
- 【内存】物理内存和虚拟内存
- python编写一个班级类 点名簿_班级小游戏
热门文章
- echarts:实现legend中的textBorderColor动态改变问题
- PHP 7从零基础到项目实战,PHP 7从零基础到项目实战
- python实现GCD算法
- ASP.Net三层架构
- session 修改密码python_django修改密码强制退出机制
- Linux交换分区 swap分区
- 计算机无法连接到wifi但手机可以使用,电脑连不上wifi但是手机可以连得上怎么解决...
- php大写数字转换,php如何实现数字金额转换大写金额(代码示例)
- 新安装Win10操作系统有必要设置的几个技巧
- 卡通渲染 类罪恶装备与崩坏3渲染总结