Java Web程序设计教程(第二版)(微课版)08 Hibernate性能优化.pptx

Java Web程序设计教程(第二版)(微课版)08 Hibernate性能优化.pptx

  1. 1、本文档共22页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

第8章Hibernate性能优化本章概述本章学习目标主要内容JavaWeb程序设计教程(第二版)(微课版)第八章Hibernate性能优化第1页

上一章学习了如何使用Hibernate完成持久化操作,但是如果使用不合理,就可能引起很多并发问题或降低应用程序的性能。为了解决这些问题,Hibernate提供了事务和并发控制,并支持缓存机制,本章就重点介绍这些技术。事务与并发控制是保证应用程序正常运行的必要手段,缓存是提高应用程序性能的关键因素。通过本章的学习,读者应掌握Hibernate对事务和并发的处理方式以及如何在应用程序中应用Hibernate缓存。JavaWeb程序设计教程(第二版)(微课版)第2页本章概述第八章Hibernate性能优化

JavaWeb程序设计教程(第二版)(微课版)第3页本章学习目标理解事务的概念了解并发可能引起的问题掌握Hibernate的悲观锁与乐观锁的使用理解Hibernate的缓存机制掌握Hibernate各种缓存的应用第八章Hibernate性能优化

JavaWeb程序设计教程(第二版)(微课版)第4页主要内容8.1Hibernate事务与并发 8.2Hibernate缓存8.3本章小结 8.4思考和练习第八章Hibernate性能优化

JavaWeb程序设计教程(第二版)(微课版)第5页8.1Hibernate事务与并发事务(Transaction)是工作中的基本逻辑单元,这个单元里的所有操作要么都执行,要么都不执行。在关系数据库中,一个事务可能包括一系列更新数据库记录的SQL操作,而一个完整的事务保证这些操作都被正确地同步到数据库中,不会发生数据的不完整或不一致现象,或者受到其他干扰。第八章Hibernate性能优化

JavaWeb程序设计教程(第二版)(微课版)第6页为什么需要事务数据库中的数据是共享资源,因此数据库系统通常要支持多个用户的或不同应用程序的访问,并且各个访问进程都是独立执行的,这样就有可能出现并发存取数据的现象,这里有点类似Java开发中的多线程安全问题,如果不采取一定措施会出现数据异常的情况。第八章Hibernate性能优化

JavaWeb程序设计教程(第二版)(微课版)第7页事务的特性一个逻辑工作单元要成为事务,必须满足事务的ACID特性。原子性(Atomic);一致性(Consistent);隔离性(Insulation);持久性(Duration)。第八章Hibernate性能优化

JavaWeb程序设计教程(第二版)(微课版)第8页HibernateSession和事务范围HibernateSession是和事务联系在一起的,可以通过Session获取事务的接口,从而进行事务的控制。Transaction接口是对事务实现的抽象,这些实现包括JDBC事务等。Transaction接口中定义了如下方法:cimmit()rollback()一个Session实例可以与多个Transaction实例相关联,但一个特定的Session实例在任何时候必须与至少一个未提交的Transaction实例相关联。第八章Hibernate性能优化

JavaWeb程序设计教程(第二版)(微课版)第9页并发控制并发是指同一个时间段内多个事务共同请求同一个资源。并发控制是确保及时纠正由并发操作导致错误的一种机制。通俗的说,就是保证多个线程同时对某一对象进行操作时不会出错。第八章Hibernate性能优化

JavaWeb程序设计教程(第二版)(微课版)第10页并发可能引起的问题如果没有锁定且多个用户同时访问一个数据库,那么当他们的事务同时使用相同的数据时可能会发生问题。由于并发操作带来的数据不一致性包括:丢失数据修改读“脏”数据(脏读)不可重复读虚读第八章Hibernate性能优化

JavaWeb程序设计教程(第二版)(微课版)第11页数据库事务隔离级别为了解决数据库事务并发运行时的各种问题,数据库系统提供了4种事务隔离级别:Serializable;RepeatableRead;ReadCommitted;ReadUncommitted。第八章Hibernate性能优化隔离级别与并发性能的关系

JavaWeb程序设计教程(第二版)(微课版)第12页悲观锁锁就是防止其他事务访问指定资源的手段。锁是实现并发控制的主要方法,是多个用户能够同时操纵同一个数据库

您可能关注的文档

文档评论(0)

喜宝 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档