java - StaleObjectStateException 或 OptimisticLockingException

标签 java hibernate jpa transactions optimistic-locking

在哪里可以找到有关在基于版本的乐观锁定保存操作中捕获哪些异常的信息。

“互联网”上的文本表明 Hibernate 自己的或 JPA 的 OptimisticLockingException 中的任何一个,但当我这样做时,我发现在我的基于 Hibernate 4.3 session 的应用程序中,这种类型的异常由org.hibernate.StaleObjectStateException

建议的差异让我想知道“真正”的方法是什么。

此外,我已准备从 Hibernate Session 迁移到 JPA。 (我的)这个问题有标准吗?那会是什么?

干杯 垫子

最佳答案

这取决于您要使用的 API。

  1. 如果您使用 JPA 和 EntityManager 接口(interface),那么 Hibernate 将简单地包装所有 [StaleStateException][1] (这是 的基类) javax.persistence.OptimisticLockingException 中的 >StaleObjectStateException)

  2. 如果您通过 Session 接口(interface)使用 Hibernate 特定 API,那么您将得到 StaleObjectStateException

关于java - StaleObjectStateException 或 OptimisticLockingException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31254843/

相关文章:

java - 如何遍历 JavaFX 上的按钮列表并根据所述按钮的数据显示场景

java - 如何将文件从 MySQL BLOB 下载发送给最终用户?

java - hibernate hsql 获取错误节点 : org. 没有数据类型 hibernate.hql.ast.tree.IdentNode

java - 通过嵌套列表对象中的多个值查找对象 Hibernate、Jpa

具有巨大参数的 JPA CriteriaDelete

java - java中的分词器或在多个空格处分割字符串

基于 Java 的加密器,仅生成字母数字字符

java - Swagger 示例帖子正文 - 如何显示 JSON Body - Swagger-annotations

java - '...jdoDetachedState' gwt 项目中的未知列 'field list'

java - jpa发现问题