求教:hibernate在简单表的插入速度和JDBC插入速度相差多远?请指教。
求教:hibernate在简单表的插入速度和JDBC插入速度相差多远?请指教。
我在自己的机器上测试的结果是相差很大。
JDBC插入可以有1500/S,而hibernate只有400/S,
感到很奇怪,到底是我自己用错了hibernate?还是在简单插入的情况下,
hibernate的确是这样的?
测试的条件如下:
机器:P4 2.66 / 1G MM。
操作系统: XP SP2
数据库:MS Sql 2000个人版
hibernate: 3.0.5
JDBC驱动:微软提供的。
表的字段:id,name,desp
两者JAVA普通应用程序。
代码为:
JDBC:
for(int i = 1; i <= 10001; i++)
{
String strSql = "insert into Items values(";
strSql += i;
strSql += ", 'XXXXX', 'XXXXXXX')";
Statement stat = con.createStatement();
stat.executeUpdate(strSql);
}
Hibernate:
Item item = new Item();
item.setName("XXXX");
item.setDescription("lalalalal");
Session session = HibernateUtil.getSession();
Transaction transaction = session.beginTransaction();
session.persist(item);
session.save(item);
transaction.commit();
session.close();