使用 @Version 列不允许 @ManyToOne 关系属性作为引用
我正在使用休眠3.6.3.Final。我有两个关系实体 A & B 的单向 ManyToOne 定义为: @Entity public class A { ... @Version @Column ( name = "Chang…
我可以使用对象的乐观锁定来保护其关联吗?
我们在 Rails 应用程序中遇到了竞争条件问题。在解释之前,先看一些(简化的)代码: class Message < ActiveRecord::Base belongs_to :question en…
nHibernate 和并发检查
我想使用 UnitOfWork 模式使用 nHibernate 3 实现并发检查。 更准确地说: 打开新会话, 在会话中加载实体, 关闭会话, 给用户一些时间在加载的实体…
关于乐观锁(Hibernate)的基本问题
我刚开始使用“乐观锁定”机制 - 我正在使用 hibernate(在 Jboss 中)和容器管理事务(CMT)。 我想处理以下情况:在我的实体读取和实体更新之间,其…
如何在同一 TX 中发生 OptimisticLockException 后重试更新
在我的程序中,我需要能够在外部事务更新行后重试行更新。 Hibernate/JPA 抛出 OptimisticLockException,我捕获了它。 重试时,我尝试通过 JPQL/HQL …
关于 spring/jpa/hibernate 乐观锁的简单设计问题
我有一个 GeneralKnowledgeTest 对象,它包含许多统计字段( ratingsCount、responseCount、 ratingStars ...),每次用户进行该测试时都会更新这些统…
如果我更新子级,父级的版本属性不会增加
我将 JPA 2 与 Hibernate 3.x 一起使用。我有两个实体对象 Foo 和 Bar,关系是这样的 - @Entity public class Foo{ @Id private long id @OneToOne(ca…
Hibernate (JPA):当多个对象被修改和提交时如何处理 StaleObjectStateException
考虑以下场景: 一项数据库事务涉及不同表中的多个行并进行版本控制。 例如: 商店列表和产品。商店列表可能包含产品(及其在商店列表中的数量),并…
JPA toplink 中是否可以实现列级乐观锁定?
我研究了 JPA 中的乐观锁定,在数据库中添加 @Version 注释以及版本列以及它如何由 EntityManager 等管理。 文档说< strong>(用我自己的话说)乐…
NHibernate<时间戳>Oracle 数据库的映射导致 StaleStateException时间戳>
我们有一个 NHibernate 应用程序,正在从 SQL Server 迁移到 Oracle。我们的乐观并发是通过 映射元素实现的。 Oracle中对应的Version列的数据类型是DA…
如何克服 grails 服务中的 StaleObjectStateException
我引入了一个 TransactionService,我在控制器中使用它来执行乐观事务。它应该 尝试执行给定的事务(=闭包) ,如果失败则回滚, 如果失败则重试 它基…
如何对 Grails 应用程序进行并发修改测试
我想运行测试来模拟用户同时修改 Grails 应用程序的某些数据。 我可以使用任何插件/工具/机制来有效地做到这一点吗?它们不必是特定于 grails 的。应…
Null @Version 列的 org.springframework.transaction.UnexpectedRollbackException
我在我的应用程序中使用 Spring 3.0.4-RELEASE、JPA 2.0 和 Hibernate 作为提供程序,并使用 JTA JOTM 进行事务处理。在对实体对象调用 entityManager…
如何引发 OptimisticLockException
无法捕获乐观锁异常。 引发 OptimisticLockException 的一种方法是使用 em.flush() try{ //some enitity em.flush() } catch(OptimisticLockException…
Spring乐观锁:如何重试事务方法直到提交成功
我使用 Spring 2.5 和 Hibernate JPA 实现以及 Java 和“容器”管理事务。 我有一个“用户提交后”方法,可以在后台更新数据,并且无论是否出现 Concu…