有一个导入黑名单的需求,由于量比较大,所以先采用批量insert。拿批量insert 10000条做测试。
普通的insert
<insert id="insert" parameterType="com.qiyi.zhibo.domain.QiyiZhiboBlackUser" > insert IGNORE into qiyi_zhibo_black_user (uid, create_time, operator ) values (#{uid,jdbcType=BIGINT}, #{createTime,jdbcType=TIMESTAMP}, #{operator,jdbcType=INTEGER} ) </insert>
每秒1000条左右。
批量insert:
<insert id="batchInsert" parameterType="java.util.List" > insert IGNORE into qiyi_zhibo_black_user (uid, create_time, operator) VALUES <foreach collection="list" item="item" index="index" separator="," > (#{item.uid,jdbcType=BIGINT}, #{item.createTime,jdbcType=TIMESTAMP}, #{item.operator,jdbcType=INTEGER} ) </foreach> </insert>
竟然每秒钟只有几条,好奇怪,把mybatis的debug日志打印出来,他会把10000条记录,分成多个sql,每个sql 批量插入255条数据(每一个sql的插入条数还不能,抽样算的条数,104,254,255都有,有点搞不懂,有空了看下代码)。
所以,暂时放弃使用批量,还是一条一条查吧,先把问题记在这里,有时间拜读下源码,看看问题出在哪里。
相关推荐
本文给大家分享MyBatis批量插入(insert)数据操作知识,非常不错,具有参考借鉴价值,感兴趣的朋友一起学习吧
文档中主要说明:(1)多表联合查询步骤,快捷便利;(2)数据批量插入,以及相关的案例,节省运行资源。
Mybatis与JDBC批量插入MySQL数据库性能测试,资源包含文档、代码和数据库。
mybaits 多线程 实现数据批量插入 (运用CountDownLatch实现闭锁) 1、mybatis批处理 2、数据分批量查询 3、数据分批量插入
mybatis 批量插入 嵌套select
MyBatis 映射器 insert元素 示例Demo
主要介绍了Mybatis批量插入数据返回主键的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
本文给大家介绍Oracle+Mybatis的foreach insert批量插入报错的快速解决办法,非常不错,具有参考借鉴价值,感兴趣的朋友参考下吧
mybatis-plus_batch_insert:mybatis_plus添加批量插入
Mybatis Plus 自定义批量插入或批量更新(根据唯一索引)
关于数据库批量插入时sql语句级的优化,我特意测试了两种方式,在StudentMapper中配置了两种insert模式。第一种对应insert value1,insert value2,,,,;第二种对应insert values (value1, value2,....)。发现后者果然...
通过foreach实现ibatis的批量插入
MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。这篇文章主要介绍了mybatis中批量插入的两种方式(高效插入)的相关资料,非常不错,具有参考借鉴价值,感兴趣的朋友一起看看吧
自定义版mybatis-generator代码生成插件mybatis-generator代码生成插件,实体中文注释,能生成批量插入和批量修改,一对多,多对多
源代码,springboot+mybatis 分析对比批量数据插入数据的性能对比
最近接了一个项目,其中项目需求,有一个非常纠结的问题,由于业务的关系,DB的数据表无法确定,在使用过程中字段...接下来,通过本篇文章给大家介绍oracle+mybatis 使用动态Sql当插入字段不确定的情况下实现批量insert
主要给大家介绍了关于mybatis插入与批量插入返回ID的原理的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用mybatis具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
AWS 的 RDS 两大开源数据库就是 MySQL(Aurora 和 MariaDB 是它的变种) 和 PostgreSQL。 而 PostgreSQL 跳出了普通关系型数据库的类型约束,它灵活的支持 JSON, JSONB, XML, 数组等类型。比如说字段类型可以是各种...
支持批量插入返回自增长id。亲测可用。 mybatis必须是3.3以上。 java代码如下配置 <insert id="XXXXX" useGeneratedKeys="true" keyProperty="id"> </insert> 调用时 XXX.insert("XXXXX", list); 执行后,id在list...
Mybatis插入数据返回自增主键 Mybatis插入数据以后只会返回影响的数据库行数,如果是插入一条数据成功则返回1,失败返回零,插入多条返回插入成功的数量。 通过注解或者xml配置无法直接返回自增的主键。Mybatis插入...