hibernate乐观锁与修改页面数据的思考
2013-11-23 17:30
204 查看
往往我们会干这样一件事情,查询出数据,然后修改数据。这个过程看起来非常的简单,但是如果在并发情况下,我们就要考虑数据的及时性。我们查询出一条数据,然后再次修改时,一定要带上version,确保hibernate可以用你正在编辑的记录的version和数据库中的version比较,确保你操作的数据是最新的。
另外来说,修改也可能是页面修改好--------〉从数据库出记录------〉把查询出来的记录赋予
也页面上的数据。
此过程一定要注意,从数据库中查询出记录的时候,一定要通过主键+version去查询。
为什么这样做呢?
如果不带上version去查询,那么无论我们编辑的是多久过时的数据,按照上面的流程,我们总是可以查询到最新的记录,然后修改为页面上的数据,然后肯定是修改成功!但仔细想想,我们编辑的数据可能是过时的数据,这样的成功是有问题的!
相关文章推荐
- tortoisegit安装使用
- Brief Intro to Blocks 5:Using Blocks
- NetworkError: 400 Bad Request
- 《Effective C++》学习笔记条款04 确定对象被使用前被初始化
- Python的Lambda表达式
- 从mysql数据库中导入数据到solr4.5
- 浙工ACM1450
- windows server 2008 R2 辅域控制器的安装方法
- Spring与RMI集成实现远程访问
- Jsp验证码的制作
- 利用百度地图api开发的应用实例
- ASP.NET中使用HttpWebRequest调用WCF
- 新手使用 Nexus 出现的问题 (400-bad request missing request entity)
- Everything研究之读取NTFS下的USN日志文件(1)
- 汇编基础——常用汇编指令总结
- 触屏手机左右滑动js插件
- Log4J 配置之以日期为文件名的日志
- C# 创建新RTF文件
- Leetcode: sqrt (x)
- jni开发 - 使用Memory Analyzer tool(MAT)分析内存泄漏(三)