Hibernate学习笔记8
Hibernate学习笔记8
学习课程:
悲观锁 |
Hibernate_18_Pessimistic_lock |
乐观锁 |
Hibernate_19_Optimistic_lock |
学习内容:
锁具有排他性
悲观锁
隔离级别越高,并发性越差
pessimistic
实现:依赖于数据库机制,在整个过程中将数据锁定,其他任何用户都不能读取和修改
适用于短事务
库存
t_inventory
编号 |
名字 |
数量 |
itemNo |
itemName |
quantity |
1 |
脑白金 |
1000 |
只让一个用户读取到数据
另一个数据无法读取到数据
Inventory.java
采用如下的load方法
load(class, id , lockMode)
testLoad1
testLoad2
并发性差
乐观锁
实体类添加version字段
|
optimistic
冲突检测手段
更新丢失
optimistic-lock="version"乐观锁的控制字段 根据版本号
<version name="version"/>必须配置于id后面 配置版本号字段
大多数基于数据版本记录机制(version)实现,一般式在数据库表中加入version字段
读取数据时将版本号一同读出,以后更新数据时,版本号加一,如果提交数据时
version小于或等于数据表中version字段值,则认为数据时过期的,否则给予更新
还有其他的方式
采用时间戳通过时间的前后进行判断
文章来源: blog.csdn.net,作者:fengda2870,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/fengda2870/article/details/3301264
- 点赞
- 收藏
- 关注作者
评论(0)