当前位置: 首页 > 面试题库 >

在Hibernate状态下插入大量记录的最佳方法

南门新荣
2023-03-14
问题内容

我正在使用hibernate+播放!框架在工作中,是否有使用“hibernate”插入大量记录的“最佳实践”?每个文本文件大约有6,000到10,000个,所以我不知道Hibernate是否会扼杀工作或引发异常。

任何建议都让我知道,如果需要进一步说明,请告诉我


问题答案:

在* Java Persistence and
Hibernate(Manning)中,并在Pangea的评论之后,使用无状态会话(它没有持久性上下文缓存):

StatelessSession session = sessionFactory.openStatelessSession();
Transaction tx = session.beginTransaction();
for ( int i=0; i<100000; i++ ) {
    Item item = new Item(...);
    session.insert(item);
}
tx.commit();
session.close();


 类似资料:
  • 问题内容: 我正在使用休眠+播放!框架在工作中,是否有使用“休眠”插入大量记录的“最佳实践”?每个文本文件大约有6,000到10,000个,所以我不知道Hibernate是否会扼杀工作或引发异常。 任何建议都让我知道,如果需要进一步说明,请告诉我 问题答案: 在* Java Persistence and Hibernate“(Manning)中,并在Pangea的评论之后,使用无状态会话(它没有

  • 我正在尝试在数据库表中上传Excel表。我正在将excel行转换为Hibernate实体并尝试将其保存在数据库中。为了实现这一点,我面临着问题。很少有db约束,如唯一或复合键等,但用户可以上传任何表。所以如果一个网格行无法插入,那么我的要求是其他行应该继续。和事务应该被保存。 '在这里,如果单行失败,那么所有行都失败。我得到org.hibernate.AssertionFailure:null i

  • 问题内容: 我的Web应用程序使用会话来存储有关用户登录后的信息,并在用户在应用程序中逐页浏览时维护该信息。在这个特定的应用程序,我存储,和人的。 我想在登录时提供“保持登录状态”选项,该选项会将cookie在用户的计算机上放置两周,当他们返回应用程序时,将使用相同的详细信息重新开始会话。 这样做的最佳方法是什么?我不想将其存储在cookie中,因为这似乎会使一个用户更容易伪造另一位用户的身份。

  • 问题内容: 我试图将 1,500,000 条记录插入表中。在插入过程中遇到表锁定问题。所以我想出了下面的批处理插入。 我在表上有聚簇索引。部分只是为了限制插入的记录再次插入表中 我做对了,这样可以避免表锁定吗?还是有更好的方法。 注意: 批处理和不批处理插入所花费的时间或多或少相同 问题答案: 锁升级根本不可能与语句的一部分有关。 插入大量行是自然的结果 当使用ALTER TABLE SET LO

  • 当我在Hibernate状态下更新时。cfg。xml文件,当我给出会话时。save()和事务。commit(),对象将保存在数据库中,但仍会在日志中出现一些错误,如下所示。 组织。冬眠工具模式。spi。CommandAcceptanceException:通过org上的JDBC语句执行DDL“创建表配置文件(用户名varchar(255)不为空、名字varchar(255)、姓氏varchar(2

  • 问题内容: 我想在数据库中保存一个对象。 我正在使用MySQL数据库,但是当我尝试使用MySQL数据库时,却收到一个异常消息:“数据大于列长度”。 如何使用hibernate增加列的长度? 问题答案: 如果您的列使用注释 或使用其他列类型