`
michaelxz
  • 浏览: 21117 次
  • 性别: Icon_minigender_1
  • 来自: 遂宁
社区版块
存档分类
最新评论

HIbernate细节总结(不断更新)

阅读更多

1.sessionFlush的一些问题

   sessionFlush主要工作:1.清理session缓存;2.执行sql

   sessionFlush主要在以下情况调用:1.事务commit;2.集合Iterator

   一个简单的例子:

   session.save(object);

   session.flush();在事务提交前显示调用

   trans.commit();

当执行 session.save(object)时,并不会发sql语句,而是将对象从瞬时态转换成持久态

当执行session.flush()时,会发sql语句,但是现在数据库里面不一定有数据,为什么呢?

因为数据库隔离级别的原因

 

隔离级别(Isolation Levels)是指一个事务与另一个事务之间隔离的程度,用于限制在并发条件下数据库交叉存储现象的发生。常见的隔离级别有:
1. 未提交读(READ UNCOMMITED)。事务隔离的最低级别,仅可保证不读物理损坏的数据。
2. 提交读(READ COMMITED)。SQL Server的默认级别,可以保证不读"脏"数据,但会发生不可重复读。
3. 可重复读(REPEATABLE READ)。可以保证读一致性,防止不可重复读现象的发生,但会发生幻象读。
4. 可串行化(SERIALIZABLE)。事务隔离的最高级别,事务之间完全隔离,在该级别上可以保证并发事务均是可串行的。在该隔离级别上不会发生幻象读。

 

如果是未提交读,那么在flush时,数据库中就会有相应的数据,但是这种隔离级别会造成很多的数据不一致问题 

分享到:
评论

相关推荐

    hibernate实战 英文版

    5. **持续更新**:随着Hibernate版本的不断升级和发展,本书也在持续更新中,确保读者能够获取最新的技术和最佳实践。 #### 四、适用人群与学习建议 - **适用人群**: - Java开发人员,特别是那些希望深入学习和...

    Hibernate学习心得

    在IT行业中,Hibernate是一个非常重要的Java持久化框架,它简化了数据库操作,使得开发者能够更加专注于业务逻辑,而不是底层的数据存取细节。...在实践过程中不断总结和反思,是提升技术水平的关键。

    hibernate中文文档

    通过本文档,我们不仅深入了解了 Hibernate 的核心概念和技术细节,还学习了如何有效地使用 Hibernate 来开发高性能的 Java 应用程序。随着对 Hibernate 的不断探索和实践,相信您能够更好地利用其强大的功能,提高...

    Java EE+hibernate

    ### Java EE与Hibernate知识点详解 #### 一、Java EE简介 Java EE(Java Platform, Enterprise Edition)是Sun ...在未来的技术发展中,这些技术和框架仍然会持续进化和完善,以适应不断变化的企业需求和技术趋势。

    Hibernate_api.zip_hibernate api

    **正文** 《Hibernate API:深度探索与应用实践》 Hibernate,作为Java领域中的一款主流对象关系映射(ORM)框架,极大地简化了...通过不断实践和学习,开发者将能够更好地驾驭Hibernate,为软件开发带来更多的便利。

    Hibernate JPA

    #### 二、Hibernate JPA 技术细节 ##### 1. Hibernate 与 JPA 关系 从Hibernate 3.2版本开始,该框架全面支持JPA规范。JPA是一个Java标准,旨在简化Java应用中实体对象与数据库表之间的映射关系,而Hibernate则是...

    spring2.0hibernate3.1

    提供的两个CHM文件——hibernate3.1.CHM和Spring2.0.chm,是官方的英文帮助文档,对于深入理解Spring 2.0和Hibernate 3.1的细节、API以及最佳实践具有极大价值。通过阅读这些文档,开发者可以掌握这两个框架的核心...

    HibernateDAO的写法

    DAO类负责与数据库进行交互,隐藏了底层的数据访问细节,使得业务层可以更专注于业务处理。 **三、创建Hibernate配置文件** 在使用Hibernate之前,需要配置一个hibernate.cfg.xml文件,该文件包含了数据库连接信息...

    hibernate入门教程

    本文档将带领读者深入理解 Hibernate 的核心概念和技术细节,帮助大家掌握如何利用 Hibernate 来提高 SQL 查询效率以及优化数据访问逻辑。 #### 二、环境搭建与配置 ##### 2.1 开发环境准备 首先,我们需要创建一...

    struts+hibernate+spring整合文档

    ### Struts + Hibernate + Spring 整合文档 #### 一、简介 在现代软件开发过程中,尤其是企业级应用开发中,Struts、Hibernate 和 Spring...未来随着技术的发展,这些框架也将不断更新和完善,为开发者提供更多便利。

    基于Hibernate的效率查询的研究和应用.pdf

    该方案不仅讨论了具体的实现细节,还根据系统实施的效果分析了其优缺点,并总结出了一些开发建议。 #### 关键词 - J2EE - 数据持久化层 - Hibernate - 电子运行维护系统 (E2OMS) #### 引言 数据持久化作为企业级...

    sturts+hibernate+spring

    **Hibernate框架**:是一个对象关系映射(ORM)工具,简化了Java应用程序与数据库的交互,使得开发者能够更加专注于业务逻辑而不是底层的数据访问细节。 #### 二、Struts + Hibernate + Spring 的整合实践 ##### 1...

    相片管理系统 可以用来管理相片,本系统使用了struts+hibernate

    在相片管理系统中,Hibernate负责数据的存取,通过简单的对象操作即可实现对数据库的CRUD(创建、读取、更新、删除)操作。使用Hibernate,开发者可以专注于业务逻辑,而不必关心底层数据库的具体细节。 3. **MySQL...

    对Hibernate框架的二次封装,简化对数据库的操作

    Hibernate支持CRUD(创建、读取、更新、删除)操作,以及事务管理、查询服务等功能。 二、为什么要进行二次封装? 1. 提高效率:虽然Hibernate本身已经减少了SQL的编写,但直接使用Hibernate API仍然存在一定的学习...

    2018前端开发实习总结范文精选.pdf

    本文总结了前端开发实习生的实习经历,涵盖了 Struts、Spring、Hibernate 三个框架的使用和区别,介绍了软件开发过程中的每个细节,并分享了实习生在实习过程中的经验和感悟。 1. Struts 框架: Struts 代表了表示...

    计算机软件开发实习报告总结

    - **持续学习与技术跟进**:随着技术的发展,需要不断更新自己的知识体系和技术能力,保持对新技术的好奇心和探索精神。 - **职业规划与发展**:根据个人兴趣和职业目标制定合理的职业发展规划,不断调整和完善自己...

    Hibernate 与 Mybatis 的共存问题,打破你的认知!(两个ORM框架)

    【标题】:在项目中整合Hibernate与Mybatis的共存策略 ...同时使用Hibernate和Mybatis,可以实现优势互补,但需谨慎处理集成细节。开发者应当保持开放心态,不断学习和探索,以适应不断变化的软件开发环境。

    毕业设计论文ssm个人博客系统的设计与实现SpringMVC+Hibernate+Spring论文.doc

    通过以上内容可以看出,该论文详细阐述了一个基于SpringMVC+Hibernate+Spring框架的个人博客系统的设计与实现过程,涵盖了系统开发的技术背景、关键技术和实现细节等方面。对于想要了解或学习Java EE技术栈在实际...

Global site tag (gtag.js) - Google Analytics