分割list 批量插入数据指定条数数据

一、代码层面切割好list,然后插入

复制代码
// package org.apache.commons.collections4; 先将list切成1000条一份
List<List<DeptDO>> p1 = ListUtils.partition(deptList, 1000);
for (List<DeptDO> deptDOS : p1) {
// 1000条一次批量插入
      systemDeptMapper.insertBatch(deptDOS);
}

二、使用mybatisplus批量插入方法

复制代码
    /**
     * 插入(批量)
     *
     * @param entityList 实体对象集合
     */
    public static <T> boolean saveBatch(Collection<T> entityList) {
        return saveBatch(entityList, IService.DEFAULT_BATCH_SIZE);
    }

    /**
     * 插入(批量)
     *
     * @param entityList 实体对象集合
     * @param batchSize  插入批次数量
     */
    public static <T> boolean saveBatch(Collection<T> entityList, int batchSize) {
        if (CollectionUtils.isEmpty(entityList)) {
            return false;
        }
        Class<T> entityClass = getEntityClass(entityList);
        Class<?> mapperClass = ClassUtils.toClassConfident(getTableInfo(entityClass).getCurrentNamespace());
        String sqlStatement = SqlHelper.getSqlStatement(mapperClass, SqlMethod.INSERT_ONE);
        return SqlHelper.executeBatch(entityClass, LogFactory.getLog(Db.class), entityList, batchSize, (sqlSession, entity) -> sqlSession.insert(sqlStatement, entity));
    }
相关推荐
K***65891 分钟前
Tomcat下载,安装,配置终极版(2024)
java·tomcat
x***38163 分钟前
springboot整合最新版minio和minio的安装(完整教程,新人必看)
java·spring boot·后端
通往曙光的路上5 分钟前
陪玩小项目努力
java
w***4816 分钟前
Maven Spring框架依赖包
java·spring·maven
汤姆yu6 分钟前
基于springboot的乡村信息建设管理系统
java·spring boot·后端
Halo_tjn7 分钟前
Java List集合
java·windows·计算机
多敲代码防脱发9 分钟前
初识Spring-Cloud——集群与分布式
java·spring boot·spring
O***Z61610 分钟前
HeidiSQL导入与导出数据
java
毕设源码-朱学姐11 分钟前
【开题答辩全过程】以 老年公寓信息管理系统为例,包含答辩的问题和答案
java·spring boot
GoodStudyAndDayDayUp11 分钟前
WIN11安装配置验证java\maven
java·开发语言·maven