标签:hibernate

Hibernate乐观锁引发的StaleObjectStateException分析

前言 最近一个项目中使用了Hibernate的乐观锁,不巧的是出现了乐观锁最容易报的错:org.hibernate.StaleObjectStateException: Row was updated or deleted by another transaction 下面将通过一个模拟的实例重现问题,并做相应的分析。 乐观锁的作用 乐观锁的主要作用是为了解决事务并发带来的问题,相对于悲观锁而言,乐观锁机制采取了更加宽松的加锁机制; 悲观锁大多数情况下依靠数据库的锁机制实现,以保证操作最大程度的独占性,但随之而来的就是数据库性能的大量开销,特别是对长事务而言; 乐观锁机制在一定程度上解决了这个…

阅读全文 »