本文主要为广大网友提供“TCORM框架在“教师离退休信息管理系统”项目开发中的运用”,希望对需要TCORM框架在“教师离退休信息管理系统”项目开发中的运用网友有所帮助,学习一下!
客服咨询,网学网竭诚为您服务,本站永久域名:myeducs.cn | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4.TCORM框架的设计和实现 4.1 TCORM框架的设计总述 TCORM框架是基于.NET Freamwork1.1开发的ORM框架,其主要实现对象关系映射、对象持久化API和代码生成器。由于面向对象查询的实用性和理论研究尚不成熟,本设计将其核心功能移入持久化API中。 目前在.NET下实现对象关系映射一般有两种方式:一是利用XML文件作为映射文件,另一种是利用.NET Framework提供的属性扩展性机制。本设计采用XML文件作为映射文件来实现对象关系映射。 TCORM框架只针对SQL数据库实现对象关系映射,多数据源的支持将在下一版本进行扩展。框架最终将以.dll形式发布给程序员使用。 4.2 TCORM框架的详细设计 4.2.1对象关系映射的详细设计 本部分主要包括两方面的内容,一是对对象关系映射原则的设计,二是如何使用XML文件表示这些映射信息。 1.结构映射 (1)类型映射时,根据表4.1中的内容,要求程序员在设计XML映射文件时按照该表的内容将类属性的类型和相应字段类型都写出来。XML文档中以 attributetype属性标识对象的属性类型;columntype属性标识字段类型。 (2)属性映射有四种情况:1:1映射,类中的属性直接对应数据库表的某一列;1:0映射,类中的属性不用持久化到数据库,它是系统架构师在程序设计时增添的;1:n映射,基于面向对象的原则,某个类中的属性可能是其它的类,这样的关系涉及到类之间的关联关系;n:1映射,这是对象中的几个属性凑在一起成为数据库表中一个字段的内容;1:n映射情况,牵涉到类之间的关联关系,将在关系映射部分进行设计;n:1映射时要求程序员在设计时增设一个对应的字段,将n:1映射转换为1:1的映射来实现。在映射过程中,属性名映射为字段名,属性类型映射为字段类型,属性的默认值映射为字段的默认值。XML文档中,属性的映射信息包含三个部分,attribute部分包含对象与表中所有的字段的映射信息;primaryKey部分包含一个表中所有的主键映射信息;foreignKey部分包含一个表中所有的外键映射信息。每个字段的映射信息如下: <attributeMap name="company_ID" columnName="company_ID" attributeType="string" columnType="char" size="3" isNULL="false" prevalue=”10256”/> 表4.1 类型映射表
(3)类的映射需考虑要持久化的超类、具体类两种类。针对程序中的每一个须持久化的类,都要设计一个映射文件。名称定为:类名+Map+.xml,xml文档中用下面的节点表示: <class name="personBasicInfoEntity" table="personBasicInfo" database="RetireManager"> 2.关系映射 (1)关联的映射 关联映射分单向关联映射和双向关联映射: 若A类以1:1约束单向关联B类,在XML文档中,A类的映射文件中以one-to-one作为关系标属,type=single表示单向。class=B类名称+,+B类映射文档名称,key作为设置外键的属性。而B类的映射文件中没有任何关系标识; 若A类以1:0.. *约束单向关联B类,在XML文档中,A类的映射文件中以one-to-many作为关系标属,type=single表示单向。class=B类名称+,+B类映射文档名称。kind=set表示B类对象是集合形式,kind=list表示B类对象是序列形式,key作为B类表中的外键字段名。B类的映射文件中在外键部分添加设置,标明是A类的外键值; 若A类以0..*:1约束单向关联B类,XML文档中,A类的映射文件以many-to-one作为关系标属,type=single表示单向。class=B类名称+,+B类映射文档名称。key作为设置外键的属性。B类的映射文件中没有任何关系标识; 若A类以0..*:0..*约束单向关联B类时,对于抽象出关联类的情况: A类的映射文件中以many-to-many作为关系标属,hasaccosiation=yes,type= double表示它与关联类C是双向关系,class=C类名称+,+C类映射文档名称,kind= set表示B类对象是集合形式,kind=list表示B类对象是序列形式,key作为C类表中的外键字段名。C和B关系是单向的0..*:1,C中包含B的主键作为外键,允许为NULL。
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
本站发布的计算机毕业设计均是完整无错的全套作品,包含开题报告+程序+论文+源代码+翻译+答辩稿PPT | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
本文选自计算机毕业设计http://myeducs.cn |