hibernate 批量插入 Batch
批量插入(Batch inserts)
如果要将很多对象持久化,你必须通过经常的调用 flush()以及稍后调用 clear()来控制第一级缓存的大小。
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
for ( int i=0; i<100000; i++ ) {Customer customer = new Customer(.....);session.save(customer);if ( i % 20 == 0 ) { //20, same as the JDBC batch size//flush a batch of inserts and release memory:session.flush();session.clear();}
}
tx.commit();
session.close();
INSERT语句的伪码是:INSERT INTO EntityName properties_list select_statement。要注意的是:
•只支持 INSERT INTO ... SELECT ... 形式,不支持 INSERT INTO ... VALUES ... 形式。
Session session = sessionFactory.openSession(); Transaction tx = session.beginTransaction(); String hqlInsert = "insert into DelinquentAccount (id, name) select c.id, c.name from Customer c where ..."; int createdEntities = s.createQuery( hqlInsert ) .executeUpdate(); tx.commit(); session.close();
转载于:https://www.cnblogs.com/siyu/p/3533936.html
hibernate 批量插入 Batch相关推荐
- Hibernate 批量插入、更新与删除
http://blog.sina.com.cn/s/blog_54829a240100glku.html 批量插入 在项目的开发过程之中,由于项目需求,我们常常需要把大批量的数据插入到数据库.数量级有 ...
- Neo4j批量插入(Batch Insertion)
新建一个maven工程,这里不赘述如何新建maven工程. 添加Neo4j jar到你的工程 有两种方式: 上网站官网下载jar包,根据自己的系统下载不同的压缩包,详细过程不描述,请自行搜索其他博客 ...
- NHibernate官方文档中文版——批量插入(Batch inserts)
A naive approach t7o inserting 100 000 rows in the database using NHibernate might look like this: 一 ...
- python加数据库_用python批量插入数据到数据库中
既然使用python操作数据库必不可少的得使用pymysql模块 可使用两种方式进行下载安装: 1.使用pip方式下载安装 pip install pymysql 2.IDE方式 安装完成后就可以正常 ...
- JDBC:软件架构、概述、数据库连接:普通项目添加jar包,URL、sql注入,类型转换,查询流程表、操作BLOB类型字段、批量插入,替换jar包、事务/数据库连接池
0 常识说明 0.1 软件架构方式介绍 B/S架构:浏览器 与 服务器之间的交互. C/S架构:安装的本地软件(如:今日头条等) 与 服务器进行交互. 0.2 JavaWeb技术概览 JDBC核心技术 ...
- JDBC学习总结(二)JDBC操作Blob类型字段高效的批量插入JDBC处理数据库事务将多个SQL看成一个事务执行数据库连接池C3P0DBCPDruidDBUtils工具类实现CRUD
JDBC学习总结(二)JDBC操作Blob类型字段/高效的批量插入/JDBC处理数据库事务/将多个SQL看成一个事务执行/数据库连接池C3P0/DBCP/Druid/DBUtils工具类实现CRUD ...
- Java豆瓣电影爬虫——减少与数据库交互实现批量插入
节前一个误操作把mysql中record表和movie表都清空了,显然我是没有做什么mysql备份的.所以,索性我把所有的表数据都清空的,一夜回到解放前-- 项目地址:https://github.c ...
- mysql基础----mybatis的批量插入(一)
这里面记录一下使用mybatis处理mysql的批量插入的问题,测试有可能不准.只愿世间风景千般万般熙攘过后,字里行间,人我两忘,相对无言. mybatis的批量插入 我们的测试主体类是springb ...
- MyBastis 三种批量插入方式的性能比较
数据库使用的是MySQL,JDK版本1.8,运行在SpringBoot环境下 本文章源代码:https://github.com/runbeyondmove/mybatis-batch-demo 对比 ...
最新文章
- Mysql 字符串分隔
- win10 看不到其它计算机,w10网上邻居搜索不到其它电脑怎么办
- 短网址有啥好处,用长网址不香吗?
- 【转】java编程思想第20章的注解例子用到的com.sun.mirror的jar包
- ubuntu python3.7修改默认pip版本_Ubuntu16.04安装Python3.7及其pip3并切换为默认版本
- wordmaker html转为word,PHP HTML生成word
- 将连接数据库的地址写在web.config里面,后台直接调用
- JQuery Highcharts 图表控件
- 安卓zip解压软件_安卓zip文件压缩RAR解压app下载-安卓zip文件压缩RAR解压安卓版 v3.0.4...
- Qt 点击任意子控件,背景选中 选中背景
- SSM实现毕业设计管理系统
- abaqus2021详细安装教程
- 通达oa服务器文件夹管理,通达OA办公系统软件功能介绍.doc
- F	 小名的回答 (奇偶) 湖南师范大学2018年大学生程序设计竞赛新生赛
- @Value 读取 map
- 【亲测有效!!!】解决git did not exit cleanly (exit code 1) 错误
- HBase-拆分合并
- 如何快速提升网站排名?
- 大数据对电子商务行业的影响,主要体现在哪几方面?
- 传统数据库走向消亡?