一种基于hebernate乐观锁的信息系统开发模型

来源 :软件 | 被引量 : 0次 | 上传用户:buynewer1111
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:本文使用面向对象技术对Hiberante乐观锁的version实现机制进行轻量级封装,并且结合spring框架,构建出一种信息系统开发模型,使开发更加简单,提高了开发效率。
  关键词:hibernate ;version;并发;乐观锁;Stale Object State Exception
  中图分类号:TP311 文献标识码:A DoI: 10.3969/j.issn.1003-6970.2012.04.023
  A Development Model of the Information Systems Based on the Hebernate’s Optimistic lock
  【Abstract】this article package lightweightly the optimistic lock mechanism of the version of hiberante using the object-oriented technology, combined with spring framework and to build an development model of information system, it make development easier, and improve the development efficiency.
  【Key words】Hibernate; version; Concurrent; optimistic Lock ;Stale object State exception
   0 引言
  并发控制是指在多用户的环境下, 对应用系统并发操作时进行规范的机制, 目的是避免数据的丢失修改、 读脏数据与不可重复读等, 以保证数据的正确性与一致性[1]。并发控制在多用户的模式下是十分重要的, 但这一点经常被一些数据库开发程序人员所忽视。
  并发带来的问题的解决办法有很多,大致分为悲观锁和乐观锁,悲观锁大多数情况下依靠数据库的锁机制实现,以保证操作最大程度的独占性。但随之而来的就是数据库性能的大量开销,特别是对长事务而言,这样的开销往往无法承受;相对悲观锁而言,乐观锁机制采取了更加宽松的加锁机制,乐观锁使用版本、校验和、散列值以及数据库特殊方式,如Oracle 的ORA_ROWSCN或SQL Server的timestamp等等[2]。
  乐观锁的工作原理是读取出数据时,将此版本号一同读出,之后更新时,对此版本号加一。此时,将提交数据的版本数据与数据库表对应记录的当前版本信息进行比对,如果提交的数据版本号大于数据库表当前版本号,则予以更新,否则认为是过期数据。
  其中version的解决办法使用最广,但是使用version,会使每一个实体类中多出一个与业务无关的字段version,并且使jdbc代码变得复杂。因此本文把version字段抽象到所有实体
  本开发模型采用经典的三层架构,Web层、业务逻辑层和持久层。为简化问题,本处不涉及Web层,但为了测试,添加了测试类。模型中各层调用关系如图3所示,各个层次、各个类之间的依赖关系由spring管理,为了突出层次关系,类图中进行了简化。
  数据访问对象基于CommonDao,CommonDao中的getSession方法可以获取当前的Hiberante的Session,进而进行数据的CURD操作,具体结构如图2所示。
其他文献
<正>"培育煤矿安全文化,塑造本质型安全人"(简称"培塑")是开滦集团安全文化建设的核心。"培塑"工作推进几年来,大大提高了安全可控度,保持了安全稳定的良好局面。但是,在推进
文章以社会建构主义为理论依据,对留学生汉语学习环境研究中研究关系和个人因素进行反思,发现研究者影响的独特性:研究者是环境的一部分,研究关系对于留学生的汉语学习具有重要影
管理出过很多著作论述,把管理大师与画家放在一起,实属不多见。但是大道行简,细细琢磨,在一个组织里,其实管理就如同在作画,而且这画的内容是最简单的"圈、饼、叉"的几何图形。
嵌入式系统移植是嵌入式程序开发的第一步,其目标是搭建一个与硬件配置相关良好的嵌入式软件平台。本文以uClinux系统在S3C4510B微处理器上的移植为例,着重介绍了移植bios-lt
选用40头平均体重42.75kg的长&#215;荣杂交阉猪,采用单因子完全随机设计研究了水解胶原蛋白粉对生长肥育猪生产性能、日粮消化率及背膘厚度等的影响。试验共设5个处理,在相同营
农资作为保障国家粮食安全的重要物资,其市场运行采用了较长时间的计划管理模式,直到2009年农资市场才完全放开。在现代农业的蓬勃发展,下游农资消费市场品牌意识逐渐加强,农
RFID是一种利用射频通信实现非接触式自动识别和获取数据的技术。由于RFID技术特点,RFID数据具有海量性和不确定性等特点。本文针对不确定数据上的RFID复杂事件处理技术这一问题,使用判决树和自动机相结合,对现有的复杂事件处理技术做了扩展与改进,使其能够比较高效地在不确定数据上完成复杂事件的检测并且对读取到的数据进行归类。
(接上期)6 剖检病变6.1 PSS猪 PSS猪肉的反射率高,屠宰后24h的pH值低,传递值高,宰后肉色不佳,肌肉间脂肪少.