网站首页 > 精选文章 / 正文
在网上查了很多关于mybatis-plus的批量插入,由于大多使用自增主键,不需要自动生成uuid主键网上的大部分代码为
<insert id="insertBatch" parameterType="java.util.List">
insert into user (id, name, age, create_date, create_time, create_date_time) values
<foreach collection="list" item="item" separator=",">
<trim prefix="(" suffix=")" suffixOverrides=",">
#{item.id}, #{item.name}, #{item.age}, #{item.createDate}, #{item.createTime},#{item.createDateTime}
</trim>
</foreach>
</insert>
上面这种方式是必须传入列表时就生成id,但有时候并不想这样做,想直接从前端传入列表就进行批量插入,而user表主键id又不是自增型,此时想到了一个下面这种方式。
<insert id="insertBatch" parameterType="java.util.List">
insert into user (id, name, age, create_date) values
<foreach collection="list" item="item" separator=",">
<trim prefix="(" suffix=")" suffixOverrides=",">
(select replace(uuid(), '-', '') as id), #{item.name}, #{item.age}, current_date(),current_time(),current_timestamp()
</trim>
</foreach>
</insert>
replace(uuid(), '-', '')
将生成的uuid格式中的-替换''成32位的字符串
current_date
生成yyyy-MM-dd日期格式
current_time
生成HH:mm:ss时间格式
current_timestamp
生成yyyy-MM-dd HH:mm:ss日期时间格式
Tags:mybatis批量删除
猜你喜欢
- 2025-06-13 MyBatis与Hibernate的对比分析:探索持久化框架的最佳选择
- 2025-06-13 【Mybatis实战第9天】Mybatis批量插入 batchInsert
- 2025-06-13 别再用 Mybatis Plus 的伪批量新增了,这才是真正的批量新增方式!
- 2025-06-13 真香警告!Alibaba珍藏版mybatis手写文档,刷起来
- 2025-06-13 SpringBoot整合MyBatis-Plus:从入门到精通
- 2025-06-13 Mybatis Plus批量插入数据到MySQL中
- 2025-06-13 SpringBoot系列Mybatis之批量插入的几种姿势
- 2025-06-13 项目案例:Java多线程批量拆分List导入数据库
- 2025-06-13 Mybatis 批量更新数据 Mysql批量更新数据
- 2025-06-13 腾讯架构师经验分享,MySQL 怎样批量插入数据,并且不重复