广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >java实现批量插入数据
  • 600
分享到

java实现批量插入数据

java数据库oracle 2023-09-03 06:09:17 600人浏览 薄情痞子
摘要

日常工作或者学习中,可能会遇到批量插入数据的需求,一般情况下数据量少的时候,我们会直接调用批量接口插入数据即可,当数据量特别大时,可能由于数据库限制,插入的数据最多不能超过100条(假如限制100条)

日常工作或者学习中,可能会遇到批量插入数据的需求,一般情况下数据量少的时候,我们会直接调用批量接口插入数据即可,当数据量特别大时,可能由于数据库限制,插入的数据最多不能超过100条(假如限制100条),就算是数据库支持一次性插入千条也会耗内存,如果使用一条一条的插入数据库中的话,会特别耗时间,大概是正常批量插入数据所耗时间的三倍,所以我们就会用到分批插入数据。

  • 思路
  • 我们将数据查出,放到list里面,然后将数据循环,每次循环到100条,就调用批量插入接口。

代码实现:

@Override    public void selectData(String statisDate, String eventCode) {        List<FilterLogEntity> filterLogEntity = filterlogMapper.selectData(statisDate, eventCode);        //存储插入数据(100条数据)        List<DataLog> dataLogList = new ArrayList<>();        int nums = 100;        for (int i = 0; i < filterLogEntity.size(); i++) {            dataLogList.add(filterLogEntity.get(i));            if (i > 0 && i % nums == 0 || i == filterLogEntity.size() - 1) {                filterOraMapper.insertData(dataLogList);                //每次插入完数据,将上次存储的100条数据清空                dataLogList.clear();            }        }    }

xml中sql,此处是给oracle数据库中插入数据

<insert id="insertData">insert into 表名(a,b,c)<foreach collection="dataLogList" item="item" separator="UNION ALL">select#{item.a},#{item.b},#{item.c}from dual</foreach></insert>

给其他数据库插入数据:

<insert id="insertList" parameterType="java.util.List">insert into 表名 (a,b,c)VALUES<foreach collection="dataLogList" index="index" item="item" separator="," >(#{item.a},#{item.b},#{item.c})</foreach></insert>
后续新增:给oracle数据库插入数据,也可以用这种方法```xmlbegin        <foreach collection="list" item="item" index="index">            insert into masakr.TB_HUMAN_SOCIAL_SECURITY@LINK33            (date_time, province, city, pr_name, pr_lingering_num, city_name, city_lingering_num,            gender_name,gender_num)            values(            #{item.dateTime},            #{item.province},            #{item.city},            #{item.prName},            #{item.prLingeringNum},            #{item.cityName},            #{item.cityLingeringNum},            #{item.genderName},            #{item.genderNum}            );        </foreach>        end;

来源地址:https://blog.csdn.net/qq_58545721/article/details/129791645

--结束END--

本文标题: java实现批量插入数据

本文链接: https://www.lsjlt.com/news/391689.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • java实现批量插入数据
    日常工作或者学习中,可能会遇到批量插入数据的需求,一般情况下数据量少的时候,我们会直接调用批量接口插入数据即可,当数据量特别大时,可能由于数据库限制,插入的数据最多不能超过100条(假如限制100条)...
    99+
    2023-09-03
    java 数据库 oracle
  • java 批量插入数据
    批量插入数据,常见的使用mybatis foreach 插入的方式,原始的方式和批处理 1,常见的mybatis foreach xml insert into CODEINFO (CODE_TYPE, CODE, MEAN, STAT...
    99+
    2023-09-03
    mybatis mysql 批量插入
  • 【JDBC】PreparedStatement实现批量插入数据
    题目:【JDBC】PreparedStatement实现批量插入数据 前言: PreparedStatement除了解决Statement的拼串、sql注入问题之外,还可以实现以下操作 Prepare...
    99+
    2023-09-09
    数据库 java mysql
  • Java实现百万级数据量向MySQL批量插入
    业务背景: 大数据向mysql表同步百万级数量,我们需要将大数据表里同步过来的数据分别向三张业务表做数据同步,最终将业务表的数据展示给前台进行相关业务操作。 数据量级 大数据表:700w数据量 三张业务表分别需要同步:23w、80w、680...
    99+
    2023-08-25
    mysql java mybatis
  • MyBatis如何实现批量插入数据
    本文小编为大家详细介绍“MyBatis如何实现批量插入数据”,内容详细,步骤清晰,细节处理妥当,希望这篇“MyBatis如何实现批量插入数据”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、SQL实现示例假设我们...
    99+
    2023-07-04
  • Elasticsearch批量插入数据
    Elasticsearch批量插入数据 使用bulk批量操作数据库 1. 创建批量操作文件 格式: {"index":{"_index":"home","_type":"home",""_id":"2"}}...
    99+
    2022-10-18
  • SQL批量插入数据
    MS SQL Server数据库批量插入数据的sql语句总结:第一种:insert into tb_NameList(Name,InsertDate,UpdateDate)values('aa',GETDA...
    99+
    2022-10-18
  • Java如何实现JDBC批量插入
    本篇内容主要讲解“Java如何实现JDBC批量插入”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java如何实现JDBC批量插入”吧!一、说明在JDBC中,executeBatch这个方法可以将...
    99+
    2023-07-05
  • 使用saveOrUpdateBatch实现批量插入更新数据
    saveOrUpdateBatch 是 Hibernate 中的一个方法,可以用来批量插入或更新数据。这个方法的参数是一个 List,里面可以存储多个实体对象。当 Hibernate 执行这个方法时,会检查每个实体对象是否存在主键,如果存在...
    99+
    2023-08-31
    hibernate spring java 后端
  • 如何利用MySqlBulkLoader实现批量插入数据
    这篇文章主要介绍“如何利用MySqlBulkLoader实现批量插入数据”,在日常操作中,相信很多人在如何利用MySqlBulkLoader实现批量插入数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”如何利...
    99+
    2023-07-02
  • C# MySQL 插入大批量数据
    一、定义DataTable的数据类型 private DataTable GetDataTableFromExternalSource(string tablename) { DataTable dat...
    99+
    2023-09-08
    mysql c# 数据库
  • python批量插入数据到mysql
    使用python批量插入数据到mysql的三种方法 自动化单条insert # -*- coding:utf-8 -*-import timefrom pymysql import *# 装饰器,计算插入50000条数据需要的时间def t...
    99+
    2023-09-06
    mysql 数据库 sql
  • Java实现JDBC批量插入原理详解
    目录一、说明二、实验介绍三、正式实验首先测试mysql接下来测试oracle四、存储过程五、总结一、说明 在JDBC中,executeBatch这个方法可以将多条dml语句批量执行,...
    99+
    2023-03-11
    Java JDBC实现批量插入 Java JDBC批量插入 Java JDBC插入
  • MyBatis实现批量插入数据,多重forEach循环
    目录批量插入数据,多重forEach循环下面是一个实际应用mybatis insert foreach项目场景批量插入数据,多重forEach循环 在业务开发过程中,遇到批量插入时,...
    99+
    2022-11-13
  • springboot 注解方式批量插入数据的实现
    目录一.使用场景二.实现方法1.mysql表结构2.domain3.mapper4.测试类5.测试结果三.插入效率对比1.批量插入2.一条一条插入一.使用场景 一次请求需要往数据库插...
    99+
    2022-11-13
  • gorm 执行原生sql实现批量插入数据
    可以使用 GORM 的 DB 对象来执行原生 SQL 操作,然后结合 SQL 的 INSERT INTO 语句来实现批量插入数据。 以下是一个示例代码,假设我们有一个 users 表,包含 id、na...
    99+
    2023-09-20
    sql 数据库 mysql golang
  • SpringBootMybatis批量插入Oracle数据库数据
    目录前端数据数据表结构后端Controller:mapperxml前端数据 有如下需求,前端提交一个对象cabinData,保存到数据表中,对象结构如下:  {      "ship...
    99+
    2022-11-13
  • MyBatis如何批量插入大量数据
    这篇文章将为大家详细讲解有关MyBatis如何批量插入大量数据,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。问题背景:只用MyBatis中foreach进行批量插入数据,一次性插入超过一千条的时候MyBa...
    99+
    2023-06-22
  • 大批量数据分批批量插入或更新(Mybatis+MySQL)
    大批量数据分批批量插入或更新 在MySQL数据库的前提下,插入或更新大批量数据。首先批量插入需要考虑到以下几个因素: 数据库一次可以承受多大或者多少条数据的插入批量插入是否会占用Mysql资源太久,影响系统整体使用性能代码中的集合是否会造成...
    99+
    2023-08-30
    mybatis mysql 数据库 java spring boot
  • python数据库批量插入数据的实现(executemany的使用)
    正常情况下往数据库多张表中批量插入1000条数据,若一条一条insert插入,则调用sql语句查询插入需要执行几千次,花费时间长 现使用cursor.executemany(sql,args) ,可对数据进行批量插...
    99+
    2022-06-02
    python数据库批量插入 python 批量插入
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作