首页 > 代码库 > Hibernate锁机制

Hibernate锁机制

依靠数据默认的机制:

Hibernate的加锁模式有: 
Ø LockMode.NONE : 无锁机制。 
Ø LockMode.WRITE :Hibernate在Insert和Update记录的时候会自动 
获取。 
Ø LockMode.READ : Hibernate在读取记录的时候会自动获取。 
以上这三种锁机制一般由Hibernate内部使用,如Hibernate为了保证Update 
过程中对象不会被外界修改,会在save方法实现中自动为目标对象加上WRITE锁。 
Ø LockMode.UPGRADE :利用数据库的for update子句加锁。 
Ø LockMode. UPGRADE_NOWAIT :Oracle的特定实现,利用Oracle的for update nowait子句实现加锁

==========================

悲观锁:for update 发出的SQL语句有差别

Criteria.setLockMode 
Query.setLockMode 
Session.lock 

==========================

乐观锁:

时间戳

版本控制

==========================

 

Hibernate锁机制