首页 技术 正文
技术 2022年11月14日
0 收藏 403 点赞 4,507 浏览 1354 个字

这篇博文是Hibernate系列的最后一篇,既然是最后一篇,我们就应该进行一下从头到尾,整体上的总结,将这个系列的内容融会贯通。

概念

Hibernate是一个对象关系映射框架,当然从分层的角度看,我们也说它是数据持久层的框架。

我们从上一句话可以看出Hibernate的核心:面向对象、关系映射以及数据持久化。前面两个概念很容易理解,而对于“数据持久化”,就是将数据或者某物体,永久的保存起来。现实生活中的例子有很多,例如:鲜肉冷藏,水果做成罐头,而对于编程而言就是将数据保存在文件或磁盘以及数据库中。下面我们再看一下Hibernate的核心对象:

核心对象

【SSH进阶之路】Hibernate系列——总结篇(九)

上面这幅图反馈给我们的信息有很多,能否读懂这幅图可以从侧面反映你对Hibernate理解的水平。下面我们说几条:

1、Hibernate有俩个主要的配置文件:(Hibernate.cfg.xml和xxx.hbm.xml)

2、Hibernate有五个或六个接口:Configuration、SessionFactory、Session、Transaction、Query和Criteria。

3、Hibernate的执行原理,看上图的箭头即可。

4、Session对象是通过SessionFactory构建的,这是Hibernate创建Session的两种方式之一。

。。。。。。

由于内容太多,我们暂时就列这么多,就不再一一列举了。下面我们再详细的介绍映射的分类。

分类

【SSH进阶之路】Hibernate系列——总结篇(九)

在Hibernate系列的起初,我将关系映射分为了以上四种,现在来看关系映射其实就两种,甚至一种。

1、从对象的加载方向上分为单向和双向两种。

单向和双向只影响数据的加载,并不影响数据的存储。不论是一对一,一对多还是多对多,单向和双向生成的数据库表是一样,单向和双向的不同是由对象模型决定的。

2、从对象的映射关系上分为一对多和多对一两种,它们又是从不同角度说的,所以也可以说是一种。

一对一关联映射是多对一关联映射的特例,只是在“多”的一端加上唯一的限制之后,用来表示一对一的关联关系。

多对多关联映射是一对多关联映射的特例,它们呢都是使用集合来表示多的关系,用<key>标签定义当前表的主键。

当然它们既有联系也有区别,区别就不再一一列举了,系列博文中已经详细的介绍了各自的联系与区别。

系列列表

【SSH进阶之路】Hibernate基本原理(一)

【SSH进阶之路】Hibernate搭建开发环境+简单实例(二)

【SSH进阶之路】Hibernate基本映射(三)

【SSH进阶之路】Hibernate映射——多对一单向关联映射(四)

【SSH进阶之路】Hibernate映射——一对一单向关联映射(五)

【SSH进阶之路】Hibernate映射——一对一双向关联映射(六)

【SSH进阶之路】Hibernate映射——一对多关联映射(七)

【SSH进阶之路】Hibernate映射——多对多关联映射(八)

【SSH进阶之路】Hibernate系列——总结篇(九)

总结

对于Hibernate的系列博文到今天为止,暂时宣布告一段落,但是并没有结束,因为对于Hibernate的内容还有很多,例如懒加载以及Hibernate的性能调优,这些内容我会在后面的项目中,为大家介绍。

后面博客,我们开始Spring的系列博文,谢谢关注。

相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,076
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,552
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,400
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,176
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,812
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,894