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

概念

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

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

。。。。。。

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

分类

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

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

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

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

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

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

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

系列列表

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

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

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

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

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

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

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

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

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

转:http://blog.csdn.net/jiuqiyuliang/article/details/41318751

最新文章

  1. 为什么你SQL Server的数据库文件的Date modified没有变化呢?
  2. 关于WEB项目的一点想法
  3. sn 密钥注册
  4. NullReferenceException UnityEngine.Transform.get_localPosition
  5. 网站标题ico那些事
  6. 在IOS中使用json
  7. 【转】iOS学习之Autolayout(代码添加约束) -- 不错不错
  8. 性能更好的js动画实现方式——requestAnimationFrame
  9. MVC5添加控制器总是报“Multiple object sets per type are not supported”
  10. O2O的理解
  11. 设为首页 收藏(IE可用)
  12. 企业管理系统开发笔记(4)---后台登录_MVC过滤器
  13. C#time 闹钟
  14. Python学习笔记总结(一)对象和流程语句总结
  15. Smarterer Test
  16. PHP接口学习
  17. ATM程序设计
  18. python模拟登陆Github示例
  19. svn错误:更新源码出现校验和不匹配问题
  20. php 守护进程(Daemon)

热门文章

  1. Kindle DXG和Win10 64bits无法连接的问题
  2. Apache Commons 系列简介 之 Pool
  3. 百度网盘kbengine - warring项目下载地址
  4. sql语句executeQuery和executeUpdate之间的区别
  5. Codis集群
  6. 通过 SMB 直通优化文件服务器的性能
  7. 【转】JSch - Java实现的SFTP(文件上传详解篇)
  8. 【Jsch】使用SSH协议连接到远程Shell执行脚本
  9. 短链(ShortURL)的Java实现
  10. zookeeper在集群负载均衡中的应用