`
逆风逛飙
  • 浏览: 8203 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
最近访客 更多访客>>
社区版块
存档分类
最新评论

hibernate:事务处理,缓存,以及性能优化.

阅读更多
事务基本概念:
事务是并发控制的基本单位.所谓的事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位,例如,银行转账工作,从一个账号扣款并使另一个账号增款,这两个操作要么都执行,要么都不执行.所以,应该把它们看成一个事务.事务是数据库维护一致性的单位,在每个事务结束时,都能保持数据一致性.
基本特征:
  原子性(Atomic):
事务中包含的操作被看做一个逻辑单元,这个逻辑单元中的操作要么全部成功,要么全部失败.
  一致性(Consistencey):
只有合法的数据可以被写入数据库,否则事务应该将其回滚到最初状态.
  隔离性(Isolation):
事务允许多个用户对同一个数据进行并发访问,而不破坏数据的正确性和完整性.同时,并行事务的修改必须与其他并行事务的修改相互独立.
  持久性(Durability):事务结束后,事务处理的结果必须能够得到固化.
数据库肯定是要被广大客户所共享访问的,那么在数据库操作过程中很可能出现以下几种不确定情况.
更好新丢失:
  两个事务都同时更新一行数据,但是第二个事务去中途失败退出,导致对数据的两个修改都失效了.这是因为系统没有执行任何的锁操作,因此并发事务并没有被隔离开来.
脏读取:
  一个事务开始读取了某行数据,但是另外一个事务已经更新了此数据但没有能够提交.这是相当危险的,因为很可能所有的操作都被回滚.
不可重得读取:
  一个事务对同一行数据重复读取两次,但是却得到了不同的结果.例如,在两次读取的中签,有另外一个事务对该行数据进行了修改,并提交.
两次更新问题:
  无法重复读取的特例,有两个并发事务同时读取同一行数据,然后其中一个对它进行修改提交,而另一个也进行了修改提交.这就会造成第一次写操作失效.
虚读:
  事务在操作过程中进行两次查询,第二次查询的结果包含了一次查询中未出现的数据(这里并不要求两次查询的Sql语句相同).这是因为在两次查询过程中有另外一个事务插入数据造成的.
分享到:
评论
2 楼 逆风逛飙 2008-10-13  
呵呵,不好意思.我是个菜鸟
1 楼 showtime520 2008-10-12  
楼主贴段书本里的上来就标题主题:hibernate:事务处理,缓存,以及性能优化.????

相关推荐

    精通Hibernate:Java对象持久化技术详解.pdf

    最后,书中会探讨如何在实际项目中集成和优化Hibernate,包括事务管理、性能调优、问题排查等实战技巧。这有助于开发者在实际开发过程中更好地应用Hibernate,提升项目的稳定性和效率。 总的来说,《精通Hibernate...

    精通Hibernate:Java对象持久化详解.zip

    7. **性能优化**:讨论Hibernate的缓存机制,包括第一级缓存和第二级缓存,以及如何通过配置和设计优化提升系统性能。 8. **案例实战**:通过实际项目或示例,演示如何在开发中应用Hibernate,解决常见问题。 通过...

    Hibernate性能优化:一级缓存

    本文将深入探讨Hibernate性能优化中的一个重要概念——一级缓存,并结合给出的压缩包文件“hibernate_cache_level1”,来详细解析一级缓存的工作原理及其优化策略。 一级缓存是Hibernate内置的一种缓存机制,它存在...

    Hibernate缓存,性能优化

    本文将深入探讨Hibernate缓存的原理、类型及其对性能优化的影响。 ### Hibernate缓存原理 Hibernate缓存主要分为一级缓存和二级缓存。一级缓存,也称为会话缓存(Session Cache),是默认启用的,由Hibernate自动...

    hibernate性能优化.doc

    在使用Hibernate进行数据库操作时,性能优化是至关重要的,特别是在处理大数据量的系统中。以下是一些关于Hibernate性能优化的关键点: 1. **数据库优化**: - **硬件优化**:磁盘I/O是数据库性能的关键,选择高...

    Hibernate性能优化:二级缓存

    二级缓存是Hibernate性能优化的重要手段,通过合理配置和使用,可以显著减少数据库访问,提高系统响应速度。但同时,需要注意缓存的副作用,如数据一致性、并发控制等问题。在实际应用中,需要结合业务场景和性能...

    Beginning Hibernate: For Hibernate 5

    - **改进的性能**: Hibernate 5 在性能方面进行了优化,包括更高效的缓存管理和查询执行。 - **支持 Java 8**: 全面支持 Java 8 的 Lambda 表达式和 Stream API,使得开发过程更加简洁高效。 - **NoSQL 支持**: 增加...

    Hibernate性能优化策略.

    总结起来,一级缓存是 Hibernate 内置的一个重要的性能优化工具,通过合理利用它可以显著提高应用的性能和响应速度。在实际开发中,根据具体的业务需求选择合适的并发控制策略和缓存策略,可以有效地提升系统的整体...

    hibernate缓存和事务

    Hibernate 是一个流行的对象关系映射(ORM)框架,它允许Java...通过理解Hibernate缓存和事务管理,以及如何有效地执行查询,开发者可以创建高效、健壮的Java应用程序,降低与数据库交互的复杂性,同时提升系统性能。

    41_传智播客hibernate教程_hibernate二级缓存的扩充细节.rar

    本教程聚焦于Hibernate的二级缓存,这是一个重要的性能优化手段,尤其对于大数据量的Web应用来说。 首先,我们需要理解Hibernate的缓存层次结构。一级缓存是SessionFactory级别的,每个Session内部都有一个一级缓存...

    Hibernate程序性能优化.doc

    ### Hibernate程序性能优化 #### 一、概述 Hibernate作为一款流行的Java持久层框架,为开发者提供了简化数据库操作的强大工具。然而,在实际应用中,不少开发者遇到了性能问题:使用Hibernate实现的功能与直接使用...

    day37 05-HIbernate二级缓存:一级缓存更新同步到二级缓存及二级缓存配置文件

    本篇文章将深入探讨Hibernate的二级缓存机制,以及如何进行一级缓存与二级缓存的同步,同时还会介绍二级缓存的配置文件设置。 一级缓存是Hibernate默认提供的缓存,每个SessionFactory实例都有一个一级缓存。当对象...

    Hibernate缓存与spring事务详解

    例如,通过Spring事务确保在一个事务内对多个对象的操作要么全部成功,要么全部失败,同时Hibernate的缓存减少对数据库的直接访问,提高系统性能。然而,合理配置缓存和事务策略以平衡性能和数据一致性是开发中的...

    hibernate-release-5.3.18.Final.tgz

    - 性能优化:此版本对查询执行和缓存机制进行了优化,提升了整体性能。 - 稳定性增强:修复了一些已知的bug,增强了框架的稳定性,降低了应用出现异常的风险。 - 新特性支持:可能包含对新的JPA规范的支持,以及...

    精通Hibernate:java对象持久化技术

    - Hibernate 3.x相对于2.x可能包含性能优化、新功能和API的改进。 在实际开发中,理解这些知识点有助于构建高效、可维护的Java应用程序,并利用Hibernate简化数据库操作,提升开发效率。通过持续学习和实践,...

    hibernate-core-5.0.11.Final.jar

    Hibernate Core是Hibernate框架的基础部分,它包含了ORM的核心功能,如实体管理、事务处理、查询语言(HQL)等。`5.0.11.Final`版本是一个稳定且广泛使用的版本,提供了诸多改进和优化。 二、源码结构解析 `...

    精通Hibernate:Java持久化对象技术详解[第二版]

    7. **性能优化**:讨论如何通过优化配置、批处理、延迟加载、懒加载等手段提高Hibernate的运行效率,减少数据库访问。 8. **实体生命周期**:详解Hibernate对对象状态的管理,包括瞬时态、持久态、游离态和脱管态,...

    DmDialect-for-hibernate4.0.zip

    这样,开发人员就可以利用Hibernate的高级特性,如懒加载、事务管理、缓存等,进行数据库操作,而无需编写大量的SQL代码。 总结起来,这个名为"DmDialect-for-hibernate4.0.zip"的压缩包是专为SpringBoot项目设计的...

    hibernate缓存机制分析共17页.pdf.zip

    总结,Hibernate的缓存机制是其性能优化的重要手段,理解并合理运用缓存能够显著提升应用的运行效率。但同时,也需要注意缓存可能带来的问题,如内存管理和数据一致性,确保在提高性能的同时,保持系统的稳定性和...

Global site tag (gtag.js) - Google Analytics