`
yangxiangsui
  • 浏览: 9191 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

Hibernate重点归纳

阅读更多
这几天学习了一上Hibernate,看到其中的几个重点,现在做一下小总结:
知识点:
映射关系:
一对一主键单向映射、一对一主键双向映射、一对一外键单向映射、一对一外键双向映射;多对一关联映射、一对多关联映射、多对多关联映射;
Hibernate中数据的三种状态:
瞬间状态(transient)、持久状态(persistent)、离线状态(detached);
transient状态的特征?
   * 在数据库中没有与之匹配的数据
   * 没有纳入session的管理
persistent状态的特征?
   * persistent状态的对象在数据库中有与之匹配的数据
   * 纳入了session的管理
   * 在清理缓存(脏数据检查)的时候,会和数据库同步
detached状态的特征?
   * 在数据库中有与之匹配的数据
   * 没有纳入session的管理
Hibernate中读取数据得load和get方法得区别:
  * get不支持lazy,load支持lazy,
  * 采用get加载数据,如果没有匹配的数据,返回null,而load则抛出异常;
Hibernate中Sessions的概括:
session flush方法主要做了两件事:
  * 清理缓存
  * 执行sql
session在什么情况下执行flush
  * 默认在事务提交时
  * 显示的调用flush
  * 在执行查询前,如:iterate
  * hibernate按照save(insert),update、delete顺序提交相关操作,
hibernate一级缓存

一级缓存很短和session的生命周期一致,一级缓存也叫session级的缓存或事务级缓存

那些方法支持一级缓存:
* get()
* load()
* iterate(查询实体对象)

如何管理一级缓存:
* session.clear(),session.evict()

如何避免一次性大量的实体数据入库导致内存溢出
* 先flush,再clear

如果数据量特别大,考虑采用jdbc实现,如果jdbc也不能满足要求可以考虑采用数据本身的特定导入工具;
hibernate二级缓存

二级缓存也称进程级的缓存或SessionFactory级的缓存,二级缓存可以被所有的session共享
二级缓存的生命周期和SessionFactory的生命周期一致,SessionFactory可以管理二级缓存

二级缓存的配置和使用:
    * 将echcache.xml文件拷贝到src下
    * 开启二级缓存,修改hibernate.cfg.xml文件
<property name="hibernate.cache.use_second_level_cache">true</property>
    * 指定缓存产品提供商,修改hibernate.cfg.xml文件
<property name="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</property>
    * 指定那些实体类使用二级缓存(两种方法)
     * 在映射文件中采用<cache>标签
     * 在hibernate.cfg.xml文件中,采用<class-cache>标签
二级缓存是缓存实体对象的

《未完》---有些总结语句转自别处
 
分享到:
评论

相关推荐

    Hibernate知识点总结

    ### Hibernate知识点总结 #### 一、Hibernate概述 Hibernate是一个开源的ORM(Object Relational Mapping,对象关系映射)框架,用于Java应用与关系型数据库之间的交互。它通过使用描述对象和数据库之间映射的元...

    hibernate知识点总结

    通过理解并熟练运用这些知识点,J2EE开发者能有效利用Hibernate简化数据库操作,提高开发效率,并更好地维护代码。学习Hibernate不仅有助于入门J2EE开发,也是进一步深入学习Spring Data JPA等高级技术的基础。

    Hibernate重点总结

    **Hibernate核心知识点详解** Hibernate是一款强大的Java对象关系映射(ORM)框架,它极大地简化了数据库操作,使得开发者可以使用面向对象的方式处理数据库事务。在本文中,我们将深入探讨Hibernate的关键概念、...

    Struts2+Spring+Hibernate知识点总结

    ### Struts2+Spring+Hibernate知识点总结 #### Struts2框架概述 - **Struts2的工作流程**: 1. **客户端发起HTTP请求**:客户端浏览器向服务器发送HTTP请求。 2. **FilterDispatcher接收请求**:根据`web.xml`...

    Hibernate知识点总结(一).docx

    Hibernate 框架是Java开发中广泛使用的对象关系映射(ORM)工具,它简化了数据库操作,使得开发者可以通过对象模型来处理数据,无需编写大量的SQL语句。本篇文章将深入探讨Hibernate的核心概念和基本使用方法。 ...

    hibernate重点总结(doc)

    一、应用程序的分层结构 二、hibernate数据持久化组件 三、持久化类 四、把持久化类映射到表 五、持久化对象(Persistent Object) 六、Hibernate中实体关系的处理 七、Hibernate知识点总结 八、Hibernate控制的事务

    hibernate主要知识点

    【hibernate主要知识点】 Hibernate 是一款流行的 Java 平台上的 ORM(对象关系映射)框架,它使得开发者可以使用面向对象的方式处理数据库操作,而无需直接编写 SQL 语句。ORM 框架如 Hibernate、TopLink 和 OJB ...

    hibernate知识点

    hibernate知识点的总结,适合初学者

    Hibernate大总结/Hibernate面试题大全

    以上总结了Hibernate的一些核心概念和面试中可能遇到的关键知识点。了解这些概念有助于更好地掌握Hibernate框架的使用,以及如何高效地利用Hibernate进行数据库操作。此外,对于面试者而言,熟悉这些概念也能帮助...

    hibernate的一份知识点总结

    ### Hibernate知识点总结 #### 一、Hibernate概述及入门 **1. HelloWorld** - **目的**:通过一个简单的示例,让初学者快速上手Hibernate,理解其基本工作流程。 - **步骤**: 1. 创建Java项目,命名为`...

    hibernate文档总结,技术汇总,PDF版的,hibernate简明参考文档

    以下是关于Hibernate的一些关键知识点: 1. **JDBC对比Hibernate**: 传统的JDBC操作涉及手动建立和管理数据库连接,而Hibernate通过提供更高层次的抽象,自动处理这些细节,使得开发人员可以更专注于业务逻辑。 2....

    hibernate 重点知识原创

    【hibernate 重点知识】 一、hibernate 简介 Hibernate 是一个流行的 Java 应用程序框架,主要用于简化对象关系映射(ORM)的过程。它允许开发者使用面向对象的方式来操作数据库,通过自动映射数据库表为 Java ...

    hibernate的知识总结

    Hibernate的知识点非常广泛,下面从给定文件的标题、描述、标签和部分内容中提炼出一些关键知识点进行总结。 ### Hibernate与数据库数据类型对照 Hibernate需要将Java的数据类型映射到数据库的相应类型。这部分...

    hibernate的一点总结

    【hibernate的一点总结】 Hibernate 是一个流行的 Java ORM(对象关系映射)框架,它允许开发者使用面向对象的方式操作数据库,将Java类与数据库表进行映射,从而避免了直接编写SQL语句的繁琐工作。这个框架的核心...

    Beginning Hibernate: For Hibernate 5

    ### 关于《Beginning Hibernate: For Hibernate 5》的知识点总结 #### Hibernate 5 概述 - **定义**: Hibernate 是一款流行的开源对象关系映射(ORM)框架,它简化了数据库与 Java 对象之间的交互过程。 - **版本**...

    Hibernate4的一些总结

    本文将围绕以下几个关键知识点进行探讨: 1. **安装与配置**:首先,介绍如何在项目中引入Hibernate4依赖,包括Maven或Gradle的配置,以及hibernate.cfg.xml配置文件的设置,如数据库连接、方言选择等。 2. **实体...

    Hibernate笔记总结

    ### Hibernate知识点总结 #### 一、配置与初始化 在配置Hibernate时,首先需要明确几个重要的配置选项及其作用: 1. **show_sql**: 这个属性用于控制Hibernate是否会在执行SQL语句时将其输出到控制台。设置为`...

    hibernate学习总结

    通过深入理解并熟练运用以上知识点,开发者能够高效地利用Hibernate进行数据库操作,降低数据访问层的复杂度,提升开发效率。在实际项目中,还需要根据需求调整配置、优化性能,以达到最佳效果。

Global site tag (gtag.js) - Google Analytics