基于.Net的数据库对象化访问开发框架的构建与应用硕士学位论文(55页).doc
《基于.Net的数据库对象化访问开发框架的构建与应用硕士学位论文(55页).doc》由会员分享,可在线阅读,更多相关《基于.Net的数据库对象化访问开发框架的构建与应用硕士学位论文(55页).doc(55页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-基于.Net的数据库对象化访问开发框架的构建与应用硕士学位论文学校代码: 10246学 号: 09222010186硕 士 学 位 论 文(专 业 学 位)基于.Net的数据库对象化访问开发框架的构建与应用院 系:软件学院专 业: 软件工程姓 名:章称指 导 教 师: 戴开宇 博士完 成 日 期: 2011年9月20日-第 48 页目 录摘 要IIIABSTRACTIV第一章 绪论11.1 研究背景11.2 论文内容及意义21.3 论文结构3第二章 ORM研究与关键技术介绍42.1 关系模型与对象模型概念42.1.1 关系模型42.1.2 面向对象模型52.2 ORM 技术产生的主要原因62
2、.3 .Net平台下ORM底层数据访问技术72.4 远程数据访问技术8第三章 ThinkWide框架需求分析与设计11 3.1 框架需求分析113.1.1 NHibernate 框架优缺点分析113.1.2 iBatis.Net 框架优缺点分析133.1.3 框架需求总结133.2 框架设计目标163.3 框架架构设计173.4 与其他主流框架功能对比20第四章 ThinkWide框架的实现204.1 框架核心系统模块的详细设计与实现214.1.1多数据库数据访问层的详细设计与实现214.1.2 数据传输服务层的详细设计与实现264.1.3 数据对象封装层的详细设计与实现314.2 框架扩展系
3、统模块的设计与实现384.2.1 通用界面组件对象层的设计与实现384.2.2 业务逻辑层的设计与实现404.2.3 用户界面层的设计与实现404.2.4 动态脚本语言层的设计与实现414.2.5 数据库对象代码自动生成工具的实现43第五章 ThinkWide框架的应用455.1 Power分销系统简介455.2 ThinkWide框架在Power分销系统中的应用475.2.1统一开放的数据交互接口475.2.2 更方便的实现BS/CS双架构应用505.2.3 统一的界面应用风格535.2.4 业务可定制化545.3 运行环境555.4 小结56第六章 结束语576.1 总结576.2 展望5
4、7参考文献59致 谢61摘 要数据库对象化访问即对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的。目前基于.Net的ORMapping有很多开源架构。但是一些框架有完善的地方也有不足之处,比如NHibernate过于严谨而造成使用时不灵活,限制很多,特别是在直接使用SQL,存储过程上很不方便,对存储过程支持度差。而iB 小巧灵活但是功能过于简单,对象化程度低,开发效率也较低。另外这些框架都没有在底层直接支持对象的远距离传输功能。由于上述这些原因需要设计一种结合了各个框架优点的新的ORM框架,整个框架设计的主要特点如下:1.实
5、现了全面的对象化数据库访问,支持插件式的可扩展的多数据库访问功能。2.直接支持存储过程对象和视图对象等功能。可以灵活的使用SQL,SQL语句即可以通过管理类自动生成,也可以手动编写。3.在框架内部直接支持对象数据远程传输,而且支持多种形式的数据对象传输服务,比如Web Service,WCF,Remoting等传输服务。4.扩展了普通ORM的功能边界,在框架内直接支持业务层,界面层等功能,适应性更强,效率更高。所以该框架能够比较有效地解决灵活性和功能性上面的许多问题,使得开发人员在开发效率上面有了较大的提升,在使用上又比较得心应手。同时该框架扩展了一般ORM的概念,支持了远程数据自动传输,统一
6、的界面层等实用功能。本文最后详细阐述了一个应用实例来充分展现框架的应用特性。关键词 : 数据访问技术,ORM,O/R Mapping,.NET,数据访问框架,快速开发 ABSTRACTObject / Relation Mapping (ORM) is Object-Oriented database access, which is developed along with method of object-oriented software development. There are many open-source ORM framework designs based on .NET
7、 currently. Some frameworks are powerful but also minor fault. For example, Nhibernate is too stringent to be flexible, especially in directly usage of SQL, and is not convenient and less supportive during store process. As well, iB is flexible but too simple in function, low level of object-Oriente
8、d development, low efficiency and not simple in coding. In addition to many frameworks do not directly support the long-distance transmission object function. Due to these reasons,it needed to design the new framework which combination the advantages of each framework. The whole ORM framework design
9、 main features below:1. To realize the comprehensive Object-Oriented database access and support plug-in type extensible database access functions.2. Directly support storing procedures objects and view object, and other functions. Flexibly use SQL statements, which are created automatically by sql
10、management class, or manually.3. Directly support object data remote transmission in internal framework, also support various forms of data objects transmission services, such as Web Service, Remoting, WCF and other transmission services.4. Expand the border of ordinary ORM function, directly suppor
11、t business layer, interface layer in framework with more adaptability, high efficiency.Therefore, this framework can more effectively solve many problems about flexibility and functional. And developers can raise the efficiency of developing program through using it. Meanwhile the framework expanded
12、 the general ORM concept, it support the remote data automatically transmission, unified interface layer etc. and other more useful functions.Keywords: Data Access Technology, ORM,O/R Mapping,. NET, data access framework, rapid development第一章 绪论1.1 研究背景数据访问是通过特定函数接口从数据库中查询数据以及保存和修改数据库中的数据。一般而言,数据访问就
13、是对数据库中的数据进行CRUD操作:Create(创建)、Retrieve(检索)、Update(更新)和Delete(删除)。自从数据库技术诞生以来,数据访问技术就成为应用程序开发的一项重要技术。随着数据库技术的不断发展,数据访问技术也在不断进步1。在数据库出现的早期,开发人员只需要了解正在使用的数据库产品的详尽知识。但数据库产品和技术发展很快。从关系数据库到非关系数据存储区(如电子邮件和文件系统),数据访问技术必须始终追随技术的飞速变化。并且,随着客户端服务器及多层应用程序结构的出现,现在开发人员必须了解多种数据访问技术。大多数开发人员花了数年时间学会了许多缩写词所对应的技术,例如,ODB
14、C、DAO、RDO、OLE DB、ADO 和 RDS。现在 Microsoft 已经推出 .NET 框架,并且,随之还有另外一项新的数据访问技术:ADO.NET2。在非微软平台下,还有著名的JDBC。以上的数据访问技术是随着关系型数据库共同发展起来的。它们的一个共同的特点,都和关系数据库的处理方式保持一致,都具有表、查询和数据集等概念。然而随着软件开发技术的不断发展,尤其面向对象技术的广泛运用,数据和程序之间出现了不协调。为了解决这个所谓的“阻抗不匹配”问题,对象数据库被提了出来,解决了程序和数据不协调的问题。但是这种模式又有点类似早期的数据库访问形式类似。又出现了老问题针对不同的对象数据库产
15、品,需要学习不同数据库访问函数库。由于关系数据库的性能、稳定性、市场份额和厂商支持都要比对象数据库好得多,很多软件系统也是构建于关系数据库上的。所以,为了既获得面向对象处理数据的优点,又能保持原有数据库平台的稳定,一种新的数据访问技术被提了出来对象关系映射技术(简称O/R Mapping,ORM)。ORM在开发数据库应用的系统中能够极大的提升开发效率,特别是在分层体系结构的系统中,上层的程序执行最终结果都是要操作数据库,而数据库是关系型,不是面向对象的,正是通过对象关系的映射,使我们实现了只对上层对象的操作实现对表的操作,感觉好像没有数据库的存在,上层只需面向对象编程就可以了。方便和快捷是使用
16、ORM的主要目的之一,然而不同的ORM框架设计的目标不同,这就造成了效率和便捷程度上的差异。部分ORM框架,例如NHibernate特别注重完整的对象关系以及强制约束,这方便了程序在不同数据库之间切换和移植,但是这降低了开发的灵活性,不能全面的发挥数据库的视图,存储过程等功能的特长。其他一些ORM框架,例如iB注重开发的灵活性支持直接的SQL应用,这虽然使用方便但是需要编写大量SQL配置文件,特别是框架内部也没有提供自动产生SQL和管理SQL的功能,而且在同数据库之间切换比较麻烦需要修改大量配置甚至部分程序。另外,大多数框架都未能在框架内部集成远程跨协议,跨广域网的数据访问功能。虽然Web技术
17、能够在框架外部解决部分问题,但是随着网络的发展,特别是移动平台的发展,越来越注重系统内部的数据远程访问能力,甚至是跨CS/BS平台应用或者手机平台的框架。基于这些情况如何能够相对平衡的解决这几个方面的问题是当前ORM框架设计的一个重要方向。1.2 论文内容及意义论文以对象化数据库访问方式的构建与应用为背景,分析传统的管理信息系统开发中,编写的数据库访问部分代码运行效率低,不易于维护,代码复杂。以及即使使用了一些主流的ORM框架后,虽然有极大的提升效率,代码变得简洁。但是也因为各个ORM框架的设计目标不同,应用的场景和空间都不相同。比如iBatis.Net简单灵活适合小型系统,但是此框架不够自动
18、化,开发繁琐。而NHibernat功能强大,封装完善适用于大型系统,但是此框架不够灵活,比较复杂。另外这些框架都没有在框架底层实现对象数据的远距离传输服务。结合这些情况,提出了基于.Net的数据库对象化访问开发框架。具体来说,论文的主要研究内容包括深入的阐述了如何设计和实现插件式、可扩展的多数据库访问支持功能及其原理。支持更多的数据库比如支持主流的网络数据库,Microsoft SQL Server数据库,Oracle数据库,DB2数据库,MySQL数据库等,以及大多数文件型数据库如Access,SQLite等。即使是不知名的第三方数据库,框架也提供了可扩展的插件功能,只需使用者开发支持框架接
19、口的数据驱动程序即可实现扩展。在这一点上要比目前的大多数ORM框架更加灵活开放。并且,研究了在框架内部设计和实现透明的,自动化的对象数据传输功能、以及支持多种形式的数据对象传输服务,比如Web Service,WCF,Remoting等传输服务。这种传输服务也是可以切换和配置的,对使用者来说无需增加和修改任何代码就可以实现。这大大方便了开发人员的系统开发以及维护人员的系统维护。另外,论文扩展了一般ORM框架的边界,阐述了在框架内部直接集成通用组件层,业务逻辑层,动态脚本语言层等更多实用功能的意义。最后介绍本框架在一个分销系统中的应用,以实际例子来展示本框架的实用和高效。在当今信息化社会,数据库
20、应用系统已深深融入整个社会,随处可以见,比如出行你会使用到交通一卡通系统,消费购物要使用到销售系统、银行系统,上班你要使用考勤系统、办公系统,工厂生产需要使用ERP系统,政府机构需要电子政务系统等等。然而这些数据库应用系统都离不开数据库和数据库访问框架。数据库访问框架对于一个数据库应用系统来说也是基础和中流砥柱。所以一个适用的、高效的数据库访问框架对提高管理系统的开发效率具有比较高的价值。1.3 论文结构本文的内容结构如下:第一章 绪论。讨论了数据库访问技术发展,分析了ORM技术产生的历史背景,提出了本文的研究方向和主要内容。第二章 ORM研究与关键技术介绍。主要研究了ORM的原理,介绍了关系
21、模型和对象模型,微软的ADO.NET框架等,以及远程数据访问技术。第三章 ThinkWide框架的需求分析与设计。针对当前的主流框架的不同缺点以及分析了主流的应用需求和目的,提出了另一种应用的ORM框架架构设计思路。第四章 ThinkWide框架的实现。根据新的ORM框架的架构设计思路,对框架的核心系统以及扩展系统进行详细的设计和具体实现。第五章 ThinkWide框架的应用。充分利用框架的功能快速的开发分销系统。极大的提升开发效率和系统的性能。第六章 总结和展望。通过对目前系统的总结,提出今后工作的目标和发展方向。第二章 ORM研究与关键技术介绍2.1 关系模型与对象模型概念数据库是根据数据
22、模型建立的,因此数据模型是数据库系统的基础3。它是描述数据、数据联系、数据语义等的集合。在整个数据库系统中数据模型具有非常重要的地位。它既与数据库应用程序相关,又和数据库管理系统相关;既可用于描述应用数据,又可用于描述数据库系统内部实现方式。目前数据库系统的数据模型主要包括网状模型、层次模型、关系模型和面向对象数据库模型,其中关系模型的应用范围最为广泛3。ORM框架研究主要涉及的数据模型是关系数据模型和面向对象数据模型,下面分别介绍关系模型和面向对象数据模型。2.1.1 关系模型关系数据库都是基于关系数据模型的。关系数据模型是基于记录(元组)的。记录是属性的集合,属性是事物的特征的抽取。每个属
23、性有一个域,表示属性的取值范围。在关系数据模型中,所有属性的域都必须是原子类型。这就是著名的第一范式。它使得记录的属性不能复合和嵌套3。关系是描述对象的一种方法。关系就是笛卡儿积的有限子集3,所以关系是一个二维表。关系模式一般由属性序列和各属性对应的域组成,关系模式是相对固定的,但关系的值是可变的。关系中的属性是无序的。从形式上看,关系相当于一个二维表,并且表中不出现组合数据。表的列对应于属性,而表的行对应于元组。如果某一属性组的值唯一地决定了关系中其他属性的值,并且其任何真子集均无此性质,则该属性组称为该关系的键。一个关系至少有一个键,也可能有多个键。如果关系中的属性或属性组不是本关系的键,
24、而是引用其它关系或本关系的键,则称为此关系的外键。键是关系模型的核心。关系数据库中的关系可以分为基本表,视图表和查询表三种类型,这三种类型的关系以不同的身份保存在数据库中,其作用和处理方法各不相同。关系模型的优势和局限性。关系数据库的主要优点是开发数据关系不复杂,规模小的应用程序比较快捷。关系表达式也容易被理解,操作方式也为大多数人们所熟知,并且有一套较为成熟的关系理论支持数据分析的方法。关系模型表达能力比较强结构简单在处理结构简单的表数据上比较方便4。这些优点使得关系数据模型在许多应用领域成为主要的数据库模型。关系模型的局限性主要表现在以下几个方面。首先,关系模型查询效率比较低,没有解决应用
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Net 数据库 对象 访问 开发 框架 构建 应用 硕士学位 论文 55
限制150内