面向对象的开发及关系数据库是当今软件开发的主流技术,他们基于不同的理论基础,各有优缺点,因此有效的把他们结合起来对一个系统的成功、优劣十分重要。 O/R Mapping 就是将他们有效结合起来的先进技术。在J2EE架构中,O/R Mapping 由EJB来实现,CMP主要由应用服务器完成映射,而BMP中映射主要由开发人员实现。BOS O/R Mapping是我们商务操作系统的重要组成部分,它为应用开发提供映射。
BOS O/R Mapping提供映射引擎、元数据的动态变化以及根据对象描述建立元数据、建数据库表、生成EJB代码的工具。它目的是让开发人员主要关注业务逻辑以及对象,而甚少关心关系数据的维护,充分发挥面向对象开发的优势,简化EJB应用开发,减轻开发人员的工作强度和减少开发时间。为EJB应用提供更大的灵活性。
O/R Mapping就是在对象(Object)和关系数据库(Relation)建立数据对应及转换的途径。这种映射可以分为元数据层和数据层两种映射,如下图。元数据层映射一般产生在设计期,如:类与表的映射、属性与列的映射等,这种映射一般是静态,一旦设计编码完成,映射就不会再变化。数据层映射就是业务对象的实例和关系数据库中数据的映射,不同实例对应不同关系数据,这种映射是运行期的,是动态的。对于我们来说,我们关心的是数据层映射,但实际上就现有的O/R Mapping产品来看,所有数据层映射均依靠元数据层映射支撑。由于这些产品的元数据层映射均为静态映射,使建立在他们之上的产品灵活性不够,如:业务对象属性的动态变化就无法支持。
:
APUSIC BOS O/R Mapping将支持元数据层的动态映射(本版本仅支持对象属性的变化)。它可以分为三部分,一部分介于应用服务器和数据库之间,提供数据映射和业务对象持久化;第二部分封装了元数据,提供业务对象属性的动态变化;以上两部分均用组件方式提供,它们将运行在最终的应用系统中,他们的功能示意图如下图。第三部分为GUI映射工具,它仅运行在设计期,帮助开发人员开发
: