`
wjt276
  • 浏览: 654505 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

006---开源O/R映射框架内容回顾

阅读更多

         Hibernate是一个O/R映射框架(也称为ORM)

         ORM词来看,O---Object(对象模型)R--- Relational(关联模型),可以做对象和关联的一种映射,当然这只是部分功能,一个完善ORM框架应该具有更多的功能:如HQL相关的查询语句、提供缓存机制(一级缓存、二级缓存)

         Java开发数据库时,使用JDBC,但是需要编写大量相同的代码,这样不便提高生产效率,而hibernate可以让你不能编写大量的相同的代码。从而提高生产效率。另一方面,hibernate可以让我们更面对象化开发,还有一个移植性hibernate只需要更改配置文件(数据库适配器)的选项,就可以非常方便的移植到不同的数据库,而不需要重新编写不同数据库厂家所对应的JDBCSQL语句了。还有hibernate可以解决阻抗不匹配(Java类中有继承关系,而关系型数据库中没有这个功能(目前数据库还不是面向对象,都是关系型数据库)),使用hibernate框架,侵入性比较好(因此hibernate称为轻量级框架)

    O/R映射框架和使用环境:在程序中添加→修改→保存;查询可以批量,但是修改不可为批量性;程序中有大量的数据只读,这样就可以一次性读取到缓存中;对象间存在自然的关系;不需要数据库SQL特定的语句优化。

    O/R映射框架不适合环境:聚集性操作:批量性添加、修改。批量的统计查询。

   

    Configuration对象:读取hibernate配置文件(hibernate.cfg.xmlhiberante.properties). new Configuration()默认是读取hibernate.properties, 所以使用new Configuration().configure();来读取hibernate.cfg.xml配置文件

 

    SessionFactory:是一个重量级对象,它的创建是耗时的。因为它对应一个数据库里所有配置,包括一些缓存机制都由SessionFactory来维护,它与二级缓存是绑定的。通常只创建一次,但它是线程安全的。

 

    Session:是非线程安全的,它是通过SessionFactory来创建的。不要多个线程同时访问同一个Session,否则会出现一些未知问题。通常是一个请求对应一个Session,请求完成要关闭Session

 

    Transaction:hibernate默认不是自动开启事务的,所以要手动开启事务、手动提交事务、手动回滚事务、手动关闭事务。当然可以通过配置文件配置成自动。一般使用手动。

 

    Hibernate正常的开发思路:考虑对象模型这一块,把对象模型建立起来,把对象图建立起来,对象之间的关系建立起来、然后再编写映射文件(hbm),然后根据映射文件生成数据库表。数据库对我来说是透明的,我们只操作对象不用关心数据库。

分享到:
评论

相关推荐

    Hibernate基础教程

    #### 六、开源O/R映射框架内容回顾 回顾Hibernate作为O/R映射框架的核心概念、优势及应用场景,加深理解其工作原理。 #### 映射文件的基本结构举例 - `<hibernate-mapping>`标签:定义映射文件的根节点。 - `...

    Hibernate最详细的讲解

    **006 开源 O/R 映射框架内容回顾** 在 O/R 映射中,Hibernate 解决了对象和表之间的转换问题,包括一对一、一对多、多对一、多对多的关系映射,以及延迟加载、级联操作等功能。 **007---Hibernate 基本映射标签和...

    struts学习的一点笔记

    在深入探讨Struts框架的学习笔记之前,我们先简要回顾一下Struts框架的基本概念与重要性。Struts是一个开源的MVC(Model-View-Controller)框架,主要用于简化Java Web应用的开发。它提供了一套标准的方式来组织和...

    Hibernate学习

    #### 开源O/R映射框架内容回顾 回顾这部分内容时,应重点关注ORM的核心概念,包括对象与数据库表之间的映射、实体类的设计以及Hibernate配置文件的编写等。 #### Hibernate基本映射标签和属性介绍 - **映射文件的...

    Hibernate教程_note.pdf

    Hibernate是一种开源的对象关系映射(O/R)框架,它使得Java程序员可以使用面向对象的思维方式来操作关系型数据库。Hibernate通过其内部的映射机制,将用户自定义的Java类映射到关系数据库中的表。这种映射不是简单...

    SSH 3大框架教程

    根据给定的部分内容,我们来简要回顾一下 JSP 页面中的常见元素与内置对象。 ##### 4.1 JSP 常用元素 - **include**:用于在一个页面中引入另一个页面。 - 示例:`<%@ include file="header.jsp" %>` - **表达式...

    Laravel开发-bbb-laravel5.5

    BigBlueButton是一个开源的在线协作和远程学习平台,它提供了丰富的功能,如音频/视频会议、屏幕共享、实时聊天和白板等。Laravel 5.5是Laravel框架的一个稳定版本,以其优雅的语法和强大的功能而受到开发者们的喜爱...

    Hibernate的学习笔记.docHibernate的学习笔记.doc

    006---内容回顾 复习了Hibernate作为ORM框架的重要性,以及它如何简化数据库操作。 007---Hibernate基本映射标签和属性介绍 - `<hibernate-mapping>`:根标签,定义映射文件的类型和版本。 - `<class>`:定义实体类...

    四个SSH框架实战项目源码加笔记

    SSH框架是Java开发中常用的三大框架——Struts、Spring和Hibernate的组合,它们分别负责表现层、业务逻辑层和数据访问层。这个压缩包文件包含了四个基于SSH框架的实战项目源码以及相关的学习笔记,这对于深入理解SSH...

    ExtJS_MVC框架的搭建实例

    - **MyBatis**: 是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。 #### 三、项目环境搭建 为了更好地理解整个项目的构建流程,...

    strust2配置

    在深入探讨Struts2配置的关键知识点之前,我们首先简要回顾一下Struts2框架的基本概念。Struts2是Apache软件基金会开发的一个开源Web应用框架,它遵循MVC(Model-View-Controller)设计模式,旨在简化Java Web应用...

    个人整理Spring 框架

    在深入探讨Spring框架的核心知识点之前,我们先简要回顾一下Spring框架的基本概念。Spring框架是一个开源的、轻量级的企业级应用开发框架,主要用于简化Java企业级应用的开发过程。它提供了一整套完整的解决方案,...

    SSH知识回顾与整合说明

    SSH框架,即Struts、Hibernate和Spring,是Java开发中常用的三大开源框架。它们分别负责不同的职责:Struts作为MVC框架处理请求和视图展示,Hibernate提供对象关系映射(ORM)以简化数据库操作,而Spring则通过IoC...

    【IT十八掌徐培成】Hadoop第02天-01.Hadoop基础回顾-进程初识-webui.zip

    在IT领域,Hadoop是一个广泛使用的开源框架,主要用于大数据处理和分析。本资源"【IT十八掌徐培成】Hadoop第02天-01.Hadoop基础回顾-进程初识-webui.zip"聚焦于Hadoop的基础知识,特别是对Hadoop进程的理解以及如何...

    struts2的加载

    在深入探讨Struts2的加载过程前,我们首先简要回顾一下Struts2框架的基本概念。Struts2是Apache组织下的一个开源Web应用框架,它继承了Struts1的优良特性,并在此基础上进行了大量改进,引入了拦截器、类型转换、...

    cakephp 框架1.3.11版本

    CakePHP是一个基于MVC(Model-View-Controller)设计模式的开源PHP框架,它旨在简化Web应用程序的开发过程,提高开发效率。这个压缩包文件包含了有关CakePHP 1.3.11版本的信息,该版本发布于较早的时期,但仍然对...

    学习目标:pythton基础-mysql数据库-python框架-简单Web-成功建站(含学习笔记).zip

    Python是一种广泛使用的高级编程语言,尤其在Web开发和数据分析领域有着重要的地位。本学习资源旨在帮助初学者系统地掌握Python的基础知识,理解MySQL数据库的使用,熟悉Python Web框架,并最终能够构建一个简单的...

    Spring5四天内容回顾.rar

    《Spring5四天内容回顾》是一份针对初学者设计的SSM框架入门视频教程的配套资料,旨在帮助学习者从零开始掌握Spring5的核心概念和技术。在这个教程中,你将逐步了解并熟悉Spring框架,以及它如何与Struts和MyBatis等...

    struts2框架2016版资料day01

    1. **Struts2框架概述**:Struts2是基于Model-View-Controller(MVC)设计模式的开源框架,它简化了Java Web应用程序的开发,提供了一种组织应用结构和控制业务逻辑的方式。Struts2继承了Struts1的优点,并吸取了...

Global site tag (gtag.js) - Google Analytics