并发
凡尘只影
书写是为了更好的思考
展开
-
JPA/Hibernate:基于版本的乐观锁并发控制
比方说,我们有一个系统由多个用户使用,其中每个实体可以被多个用户修改。我们希望避免这种情况:两个人的加载一些信息,基于他们所看到的做出一些决定,然后在相同的时间。更新状态,我们不让让后一个用户覆盖前面一个用户做出的修改。 它也可以发生在服务器环境 - 多个事务可以修改共享的实体: 事务1加载数据 事务2更新数据,并确认 事务1基于第一步加载的数据(不是当前最新数据,最新数据已经被事务2...转载 2017-03-06 14:28:35 · 1360 阅读 · 0 评论 -
Hibernate JPA 悲观锁,乐观锁
1.悲观锁 它指的是对数据被外界修改持保守态度。假定任何时刻存取数据时,都可能有另一个客户也正在存取同一笔数据,为了保持数据被操作的一致性,于是对数据采取了数据库层次的锁定状态,依靠数据库提供的锁机制来实现。 基于jdbc实现的数据库加锁如下: select * from account where name="Erica" for update 在更新的过程中,数据库处于加锁状态,任何...转载 2017-02-28 10:28:56 · 467 阅读 · 0 评论