课程咨询 :18682750260

成都达内

成都Java培训 > 达内新闻 > 成都java培训:hibernate基本概念和体系结构
  • 成都java培训:hibernate基本概念和体系结构

    发布:达内      来源:达内      时间:2016-10-20

  • 成都java培训:hibernate基本概念和体系结构

    数据库操作是当今传统应用软件不可缺少的一部分,几乎所用的应用性系统和交互性软件都离不开数据库的支持,所以对数据库数据库的操作也是一个必不可少的工作,在java的世界里,传统的数据库访问就是jdbc数据库访问,刚开始学习的时候应该还能满足我们的需求,但真正在实际应用中,其繁琐的操作,开发效率低效,代码冗余等不可避免的缺点也是大家有目共睹的,所以,一套高效简便的数据库访问框架在这种繁琐工作中诞生了,这就是我们如今java世界里风靡全球的Hibernate框架(这个应该不夸张吧),所以从今天开始,我和大家就一起进入hibernate的复习。

    Hibernate百度名片:

    Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。

    从上边百度名片中,我们可以看出:

    1) 其实hibernate底层依然是jdbc实现的,只不过jdbc的繁琐操作都让框架来替我们做了,程序员已经从繁琐的jdbc操作中解脱出来了。

    2) Hibernate是一个对象关系映射模型,也就是说,它主要操作的是对象和关系之间的映射,对象,即为我们java中类的对象,只不过类一般是一些实体类

    3) Hibernate不仅仅是在web上的应用框架,这是很多初学者的任务,认为hibernate只是用在web开发中的。其实这是一个很错误的观点

    持久化:

    上面我们看出hibernate主要完成的是一个数据持久化的重任,很多人应该想了,这个,持久化是什么啊?下面我们就来说一下这个持久化:持久化是将程序数据在持久状态和瞬时状态间转换的一种机制,持久化的主要应用是将内存中的对象存储在关系型的数据库中,当然也可以存储在磁盘文件中、XML数据文件中等等。

    (1)瞬时状态(transient)

    保存在内存中的数据。程序退出后,数据就消失了。

    (2)持久状态(Persisten)

    在一定周期内保持不变就是持久化,持久化是针对时间来说的. 数据库中的数据就是持久化了的数据,只要你不去删除或修改. 比如在IE浏览器中一次Session会话中Session对象变量也是不变的,是Session容器中持久化 ,对象持久化的方式有很多种,根据周期不同有,page,Session,Application,

    hibernate为应用程序提供了高效的O/R关系映射和查询服务,为面向对象的领域模型到传统的关系型数据库的映射,提供了一个使用方便的框架。他也是对对象持久化一个很好的实现。简单示例一下:

    对象关系映射

    从上边我们可以看出,Hibernate是一个开放源代码的对象关系映射框架,对象/关系数据库映射(object/relational mapping(ORM))这个术语表示一种技术,用来把对象模型表示的对象映射到基于SQL的关系模型数据库结构中去。ORM,即Object- Relational Mapping(对象关系映射),它的作用是在关系型数据库和业务实体对象之间作一个映射,这样,我们在具体的操作业务对象的时候,就不需要再去和复杂的 SQL语句打交道,只要像平时操作对象一样操作它就可以了。 对象关系映射(ORM)提供了概念性的、易于理解的模型化数据的方法。ORM方法论应当基于三个核心原则:

    简单:以最基本的形式建模数据。

    传达性:数据库结构被任何人都能理解的语言文档化。

    精确性:基于数据模型创建正确标准化了的结构。

    下面我们就一起来认识一下hibernate,Hibernate能做什么?

    Hibernate能帮助我们利用面向对象的思想,开发基于关系型数据库的应用程序

    第一:将对象数据保存到数据库

    第二:将数据库数据读入对象中

    Hibernate体系结构:

    一个非常简要的Hibernate体系结构的概要图:

    从这个图可以看出,Hibernate使用数据库和配置信息来为应用程序提供持久化服务(以及持久的对象)。

    我们来更详细地看一下Hibernate运行时体系结构。由于Hibernate非常灵活,且支持多种应用方案,所以我们这只描述一下两种极端的情况。“轻型”的体系结构方案,要求应用程序提供自己的JDBC 连接并管理自己的事务。这种方案使用了Hibernate API的最小子集:

    “全面解决”的体系结构方案,将应用层从底层的JDBC/JTA API中抽象出来,而让Hibernate来处理这些细节。


    推荐文章

上一篇:成都java培训:javascript弹出框、事件、对象化编程

下一篇:成都java培训:java会是下一个COBOL吗?

最新开班日期  |  更多

Java--零基础全日制班

Java--零基础全日制班

开班日期:3月31

Java--零基础周末班

Java--零基础周末班

开班日期:3月31

Java--大数据全日制班

Java--大数据全日制班

开班日期:3月31

Java--大数据周末班

Java--大数据周末班

开班日期:3月31

  • 地址:高新区高朋大道3号东方希望A座展厅
  • 课程培训电话:18682750260     全国服务监督电话:400-827-0010
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56