企业应用架构模式学习(三):映射到关系数据库
目前大多数应用都是基于关系型数据库的,以至于从另外一个角度看应用系统复杂的功能都由数据库实现了,当然,应用系统主要的也就是数据了和业务逻辑。 数据源层的作用是与应用需要的基础设施的不同部分进行通信(不同的数据存储:文本、文件、数据库、网络存储等等),建立起数据到应用系统的关系桥梁。 架构模式 架构模式要解决的问题是驱动领域逻辑访问数据库的方式。 行数据入口 记录集访问 目前我们的框架两种都支持,findById(ID),findList(*),记录集的访问结果同样也映射到一个个实例中。 行为问题 所谓行为问题,就是如何让各种对象从数据库中读取出来以及存到数据库中。多个对象的读取修改写入数据库是麻烦的,特别是多个操作相同的数据时,如何保证对象中的数据是有效的,也就是同步。 专门解决上述问题的模式就是工作单元,工作单元跟踪所有从数据库中读取的对象以及所有以任务形式修改过的对象,同样负责将更新提交到数据库。当我们调用保存数据的时候,工作单元并不立即执行,二是放入队列中。 加载对象还有另外一个问题,就是对象总是要关联很多个对象的,当某些数据不需要时,如果还要从数据库中取出来,那效率必然底下,为了避免这种低效,不需要的数据必须不加载进来,当然需要的时候还是要能加载,这里就使用到了延迟加载,拥有对象的占位符,而不是实际对象。 读取数据 Find(id),数据查找器,用来隐藏sql查询语句。