论文部分内容阅读
近年来大型软件系统大多采用面向对象的分析、设计方法和使用多层式的结构形式组织。由于目前关系数据库已经广泛流行,而面向对象数据库技术尚未成熟,因而绝大多数系统都采用关系数据库而不是使用面向对象数据库。因此怎么把对象映射到关系表一直是一个难题。本文的工作是在.NET平台上设计和实现了把对象映射到关系表的工具,即O/RMapper。
本文首先简要讨论了大型软件系统的三层式分层模式,然后着重讨论了如何利用领域模型的模式来组织领域逻辑。由此出发,讨论了领域模型映射到数据源层的方法,也就是Object-RelationalMapping方法。接着详细描述了在.NET平台下构建O/RMapper的过程。此O/RMapper基本实现了把对象保存到关系数据库的功能,能自动根据类来生成关系表结构,可以处理一般的.NET对象的增加,删除以及修改功能。它能够支持市面上大部分数据库,包括SQLServer,Oracle等。它使用了数据集缓存对象数据,支持断开式更新;支持动态建立关系表;支持分布式系统;无需用户自己建立映射文件而可以支持动态映射。但是该O/RMapper对数据库会话的管理还有待改进,对事务的支持也需要更加细致。