Hibernate插入数据效率测试
硬件配置:
4G内存、CPUi3-2.3
数据库SQL2008
package com.pan.test; import org.hibernate.Session;
import org.hibernate.Transaction; import com.pan.bean.Student;
import com.pan.uitl.HibernateSessionFactory; public class Test { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub open(); } private static void open(){ //100 条数据521-689
//1000条数据 8193 //分任务之后10个线程 6997-6698
//100个线程 每个线程10次任务 - 2798 //100个线程 测试 每个10条任务 6701 //10000条数据 63899 CPU 22% 左右94876-95361
//1000个线程 10个任务 71344 //1000条数据分任务测试 //1000条分为10次任务 Session session = HibernateSessionFactory.getSession(); long startTime = System.currentTimeMillis();
for(int i=0;i<1000;i++){ Thread th=new MyThread(session, 100);
th.setPriority(Thread.MAX_PRIORITY);
th.run(); } long endTime = System.currentTimeMillis(); session.close(); System.out.println(endTime-startTime); } } class MyThread extends Thread{ private Session session;
private int size;
public MyThread(Session session,int size){
this.session=session;
this.size=size;
} @Override
public void run() { for(int i=0;i<size;i++){
Transaction transaction = session.beginTransaction();
Student student=new Student();
student.setAddress("电视剧付款后大厦尽快发货上岛咖啡还是打飞机客户端");
student.setMsn("pan@baletu.com");
student.setName("张小三");
student.setNickName("张三");
student.setPhone("15159665635");
student.setQq("599194993");
student.setRemark("但是房间啊看的舒服噶说的法规大家看沙发党就看啥好烦开朗大方黄寺大街咖啡还是大家看法还是大家看法好");
session.save(student);
transaction.commit();
}
session.flush();
} }
Hibernate插入数据效率测试的更多相关文章
- SQl server 关于重复插入数据的测试
最近发布的脚本,有那种防止重复插入数据(包括存在时更新,不存在是插入的处理,判断的方向可能与下面的示例相反) 使用类似下面的 SQL declare @id int, @value int if no ...
- 简单的使用hibernate插入数据的例子
数据库创建脚本: drop table person create table person( id varchar(32) not null primary key ...
- 记一次 Hibernate 插入数据中文乱码报错解决
错误描述 程序运行,向表中插入数据(包含中文)报错:\xE6\xB2\x88\xE9\x9B\xAA... 但是自己另外新建一个数据库手动插入数据中文正常,同样修改数据库,表的编码之后同样不行.而且 ...
- Oracle 插入数据效率对比
oracle插入数据有多种方式: 将从多个表中查出来的数据插入到临时表中 数据行数 5189597 1.传统方式:直接将数据插入到表中 insert into LLB_BASIC_USER_D_TEM ...
- android批量插入数据效率对比
对比在android中批量插入数据的3中方式对比(各插入1W条数据所花费的时间): 1. 一个一个插入 /** * 向表中插入数据 * * @param openHelper * @param app ...
- JDBC批量插入数据效率分析
对于需要批量插入数据库操作JDBC有多重方式,本利从三个角度对Statement和PreparedStatement两种执行方式进行分析,总结较优的方案. 当前实现由如下条件: 执行数据库:Mysql ...
- hibernate 插入数据时让数据库默认值生效
用hibernate做数据库插入操作时,在数据库端已经设置了对应列的默认值,但插入的数据一直为null.查找资料发现,原来是hibernate的配置项在作怪. Hibernate允许我们在映射文件里控 ...
- oracle批量插入数据(测试)
做数据库开发或管理的人经常要创建大量的测试数据,动不动就需要上万条,如果一条一条的录入,那会浪费大量的时间,本文介绍了Oracle中如何通过一条 SQL快速生成大量的测试数据的方法.产生测试数据的SQ ...
- Hibernate插入数据后获得ID
很多表的主键都是自增型的,新增的记录使用save()方法保存以后,要获得ID,直接使用getId()就可以了,因为此时记录已经保存进数据库,已经有了ID. 另一种方法是使用MySQL的SELECT L ...
随机推荐
- CSS中常用中文字体转Unicode编码表
中文名 英文名 Unicode Unicode 2 Mac OS 华文细黑 STHeiti Light [STXihei] \534E\6587\7EC6\9ED1 华文细黑 华文黑体 STHeiti ...
- php与http协议
1.预定义变量$_SERVER $_SERVER 是一个包含了诸如头信息(header).路径(path).以及脚本位置(script locations)等等信息的数组. 可以再后台输出 f ...
- discuz 万能SQL查询调用语句写法
首先在最底层source\class\table写入底层安全调用文件例如:table_common_friendlink.php 代码: <?php /** * [Discuz!] (C)200 ...
- 更换centos源
我的虚拟机中在安装GoAccess的时候,说找不到GeoIP...尴尬. 这里暂时不说GeoIP的事情,我想更新一下我的yum源,因为我系统(Centos 6.5)使用的是默认的源.速度比较慢,这里先 ...
- 在Ubuntu14.04下安装运行Unity-tweak-tool报错scheme missing的解决办法
问题: 安装完unity-tweak-tool后,打开运行弹出出错窗口,忘了截图了,提示内容: scheme missing! Error: schema com.canonical.indicato ...
- IIS not allow PUT and DELETE method
refer : http://stackoverflow.com/questions/10906411/asp-net-web-api-put-delete-verbs-not-allowed-iis ...
- MCS-51特殊功能寄存器(SPR)的C51定义
MCS - 51单片机中,除了程序计数器PC和4组工作寄存器组外,其它所有的寄存器均为特殊功能寄存器(SFR),分散在片内RAM区的高128字节中,地址范围为80H~0FFH.SFR中有11个寄存器具 ...
- 【转】用串口登录Beaglebone Black、用usb共享电脑网络、内核模块的本地编译
原文网址:http://bbs.eeworld.com.cn/thread-431507-1-1.html 串口连接BBB使用usb线可以连接BBB和电脑,用ssh就可以登录BBB来进行操作.但有时候 ...
- 配置Delphi工具菜单 转
配置Delphi工具菜单 Delphi工具菜单是可配置的.缺省时,Delphi Tools工具菜单的菜单项为[Database Desktop].[Image Editor].[Package Col ...
- 2014-08-05 再次接触VBA
今天是在吾索实习的第20天.本来今天的计划是完成BBS的界面的设计的,但是中途发生了一些小插曲,经理要求我帮忙用VBA实现EXCEL中表与表之间的动态联编,而且答应了客户明天就要看到成品了.所以只好放 ...