首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

hibernate 乐观锁与悲观锁施用

2012-09-06 
hibernate 乐观锁与悲观锁使用Hibernate支持两种锁机制: 即通常所说的“悲观锁(Pessimistic Locking)”和 “

hibernate 乐观锁与悲观锁使用
Hibernate支持两种锁机制:
即通常所说的“悲观锁(Pessimistic Locking)”和 “乐观锁(Optimistic Locking)”。

悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在本系统中实现了加锁机制,也无法保证外部系统不会修改数据)。

Hibernate的加锁模式有:


获取数据 query.setLockMode 对查询语句中特定别名所对应的记录进行加锁(我们为 TUser类指定了一个别名“user”),这里也就是对返回的所有user记录进行加锁。

观察运行期Hibernate生成的SQL语句:


添加一个Version属性描述符
代码内容


注意version 节点必须出现在ID 节点之后。
这里我们声明了一个version属性,用于存放用户的版本信息,保存在TUser表的 version字段中。

热点排行