相关疑难解决方法(0)

LockModeType Jpa之间的区别

我对JPA中LockModeTypes的工作感到困惑:

  1. LockModeType.Optimistic

    • 它在提交时递增版本.
    • 这里的问题是:如果我的实体中有版本列,并且如果我没有指定这种锁定模式,那么它的工作原理类似于什么呢?
  2. LockModeType.OPTIMISTIC_FORCE_INCREMENT

    • 即使实体未更新,它也会增加版本列.
    • 但是,如果在提交此事务之前任何其他进程更新了同一行,它的用途是什么?这笔交易无论如何都会失败.那有什么用呢LockModeType
  3. LockModeType.PESSIMISTIC_READ

    • 此锁定模式发出select for update nowait(如果未指定提示超时)..
    • 所以基本上这意味着没有其他事务可以更新此行,直到此事务被提交,那么它基本上是一个写锁,为什么它被命名为Read锁?
  4. LockModeType.PESSIMISTIC_WRITE

    • 此锁定模式还会发出select for update nowait(如果未指定提示超时).
    • 这里的问题是这个锁定模式和LockModeType.PESSIMISTIC_READ我看到两个触发相同查询的区别是什么?
  5. LockModeType.PESSIMISTIC_FORCE_INCREMENT

    • 这样做select for update nowait(如果没有指定提示超时)并且还增加版本号.
    • 我完全没有得到它的使用.
    • 为什么需要版本增量for update no wait

oracle concurrency hibernate jpa transactions

15
推荐指数
1
解决办法
1万
查看次数

标签 统计

concurrency ×1

hibernate ×1

jpa ×1

oracle ×1

transactions ×1