首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用hibernate和sql server进行大容量插入

使用hibernate和sql server进行大容量插入
EN

Stack Overflow用户
提问于 2012-12-24 23:30:51
回答 2查看 1.4K关注 0票数 1

我使用的是hibernate(3.3版)和sql server2005。我必须在数据库中插入10万条记录。因为我使用标识作为主要的生成策略,所以我不能在hibernate中进行批量插入。我尝试了StatelessSession,但没有获得任何性能。

有没有人能建议一种提高性能的方法?

请帮帮忙。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-25 02:16:15

这里的主要问题是防止Hibernate在内存中缓存要插入的所有记录。如果只在事务中大容量插入记录,则可以使用StatelessSession。如果您执行其他操作,例如记录有关批量加载的一些统计信息,则应该在一定数量的记录之后调用session.flush()、session.clear(),例如,每10K条记录。

票数 0
EN

Stack Overflow用户

发布于 2012-12-24 23:46:27

使用HibernateTemplate.saveOrUpdateAll(Collection entities)将提供更好的性能。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14023136

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档