企业应用架构模式学习(三):映射到关系数据库

目前大多数应用都是基于关系型数据库的,以致于从另一个角度看应用系统复杂的功能都由数据库实现了,固然,应用系统主要的也就是数据了和业务逻辑。 sql

数据源层的做用是与应用须要的基础设施的不一样部分进行通讯(不一样的数据存储:文本、文件、数据库、网络存储等等),创建起数据到应用系统的关系桥梁。 数据库

架构模式 网络

架构模式要解决的问题是驱动领域逻辑访问数据库的方式。 架构

  • 行数据入口
  • 记录集访问

目前咱们的框架两种都支持,findById(ID),findList(*),记录集的访问结果一样也映射到一个个实例中。 app

行为问题 框架

所谓行为问题,就是如何让各类对象从数据库中读取出来以及存到数据库中。多个对象的读取修改写入数据库是麻烦的,特别是多个操做相同的数据时,如何保证对象中的数据是有效的,也就是同步。 spa

专门解决上述问题的模式就是工做单元,工做单元跟踪全部从数据库中读取的对象以及全部以任务形式修改过的对象,一样负责将更新提交到数据库。当咱们调用保存数据的时候,工做单元并不当即执行,二是放入队列中。 hibernate

加载对象还有另一个问题,就是对象老是要关联不少个对象的,当某些数据不须要时,若是还要从数据库中取出来,那效率必然底下,为了不这种低效,不须要的数据必须不加载进来,固然须要的时候仍是要能加载,这里就使用到了延迟加载,拥有对象的占位符,而不是实际对象。 xml

读取数据 对象

Find(id),数据查找器,用来隐藏sql查询语句。

结构预设模式

关系映射

即类属性到数据库字段的映射,其中还包括大字段,大对象的映射。

继承

使用元数据

元数据映射基于把映射浓缩到元数据文件的方法(hibernate的xml文件)

数据库链接

数据库的链接是费时的,开启关闭都是一个漫长的过程,固然也就毫秒级的,可是大量的链接关闭是没法忍受的,全部引入了链接池,链接池中一部分一直链接到数据库,使用时直接访问,也不须要断开。

 

 

本节内容即Java世界的ORMapping,想一想hibernate,对象关系映射,元数据,延迟加载,链接池等等,现在你们在作企业应用时首选hibernate,由于简单方便,兼容多种数据库,固然大量数据加载老是像蜗牛同样,要一等再等。

相关文章
相关标签/搜索