说实话,我以前从没考虑这两者之间的关系,只是最近工作当中屡次遇到对这两者误用导致的问题,促使我思考这些问题,我遇到的问题有:
1.DBA在建立数据模型时,为了在编码时方便,频繁地在一些进行数据冗余(在项目中,我就遇到过到处冗余过一个字段TypeId),而做这些的目的仅仅是为了编码时的方便(不用关联就可以取得一些字段值)与性能(若O/M,可以利用cache来提高性能),若没有使用O/M时,这种冗余还是可以谅解的,若在使用O/M后,还使用这种数据冗余,反而对编写映射文件有比较大的影响,对于数据模型中很难获得的字段.在对象模型下很好获得,即使在很多getXXX().getXXX()操作,也可以作一些转接口来减少getXXX()的长度
2.建立数据模型的人与编写映射文件的人不是同一人, 即使在这个阶段可以采取一些非优雅手段解决了那些冗余字段,但是到了编码时,编码人员还是很别扭,尤其是那些冗余字段的处理,很郁闷
3.除了数据冗余,由于数据建模人员对O/M知识的匮乏,建立一些冗余表,这种问题比字段冗余更愚蠢
4.对于那些说进行数据冗余比O/M效率高的人,我想若O/M没有使用cache的话,这个可能是个问题
分享到:
相关推荐
对象关系映射(O/R Mapping,Object Relational Mapping)表示一种技术,用来把对象模型表示的对象映射到基于SQL 的关系模型数据结构中去。 NHibernate不仅仅管理.NET 类到数据库表的映射(包括.NET 数据类型到SQL ...
为构建高效、灵活且易于使用的模型-视图-...技术构建视图层,采用总体控制与局部控制相结合的方法增强控制层的功能,采用O/R Mapping类完成数据访问操作。基于IOC/AOP技 术实现事务管理,并应用该框架开发网络收藏夹。
:为构建高效、灵活且易于使用的模型-视图...技术构建视图层,采用总体控制与局部控制相结合的方法增强控制层的功能,采用O/R Mapping 类完成数据访问操作。基于IOC/AOP 技 术实现事务管理,并应用该框架开发网络收藏夹
对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping),是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。从效果上说,它其实是创建了一个可在编程语言里...
Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java...
Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java...
Spring的数据访问架构还集成了Hibernate和其他O/R mapping解决方案。Spring还提供了唯一的事务管理抽象,它能够在各种底层事务管理技术,例如JTA或者JDBC事务提供一个一致的编程模型。Spring提供了一个用标准Java...
没有哪一个对象/关系解决方案可以支持每一种数据库的每一种特性、每一种能力以及设计上固有的缺陷,它们仅仅能做到一个子集,而能做到全集的恰恰则是SQL这个专为数据库设计的结构化查询语言SQL mapping 与 O/R ...
在第四章有专门关于XML Mapping(可方便进一步跨越到数据库的O/R Mapping)的介绍,提供了对XML文件方便实用的操作办法。 本书所有例程都是基于开源软件Tomcat或JBoss容器平台,因此有大量篇幅介绍其相关知识。 ...
在第四章有专门关于XML Mapping(可方便进一步跨越到数据库的O/R Mapping)的介绍,提供了对XML文件方便实用的操作办法。 本书所有例程都是基于开源软件Tomcat或JBoss容器平台,因此有大量篇幅介绍其相关知识。 ...
在第四章有专门关于XML Mapping(可方便进一步跨越到数据库的O/R Mapping)的介绍,提供了对XML文件方便实用的操作办法。 本书所有例程都是基于开源软件Tomcat或JBoss容器平台,因此有大量篇幅介绍其相关知识。 ...
Spring为数据存取提供了一个一致的框架,包括JDBC和O/R Mapping产品。 Spring用来作业务层部分,负责处理应用程序的业务逻辑和业务校验;管理事务;提供与其它层相互作用的接口;管理业务层级别的对象的依赖等,...
Spring为数据存取提供了一个一致的框架,包括JDBC和O/R Mapping产品。 Spring用来作业务层部分,负责处理应用程序的业务逻辑和业务校验;管理事务;提供与其它层相互作用的接口;管理业务层级别的对象的依赖等,...
Spring为数据存取提供了一个一致的框架,包括JDBC和O/R Mapping产品。 Spring用来作业务层部分,负责处理应用程序的业务逻辑和业务校验;管理事务;提供与其它层相互作用的接口;管理业务层级别的对象的依赖等,...
10. Model-View-Controller 模型-视图-控制,MVC模式是在模式2的基础上发展起来的,将数据处理,请求控制和结果显示三者分离。优点:分工明确,三者由不同程序处理,有利于不同技术人员的团队合作;代码易于阅读维护...
与DotNet数据对象结合的自定义数据对象设计 (二) 数据集合与DataTable 与DotNet数据对象结合的自定义数据对象设计 (一) 数据对象与DataRow ASP.NET中大结果集的分页[翻译] .net 2.0 访问Oracle --与Sql Server的...
6. 对象/关系数据库映射基础(Basic O/R Mapping) 6.1. 映射定义(Mapping declaration) 6.1.1. Doctype 6.1.2. hibernate-mapping 6.1.3. class 6.1.4. id 6.1.4.1. Generator 6.1.4.2. 高/低位算法(Hi/Lo ...
6. 对象/关系数据库映射基础(Basic O/R Mapping) 6.1. 映射定义(Mapping declaration) 6.1.1. Doctype 6.1.2. hibernate-mapping 6.1.3. class 6.1.4. id 6.1.4.1. Generator 6.1.4.2. 高/低位算法(Hi/...
5. 对象/关系数据库映射基础(Basic O/R Mapping) 5.1. 映射定义(Mapping declaration) 5.1.1. Doctype 5.1.2. hibernate-mapping 5.1.3. class 5.1.4. id 5.1.4.1. Generator 5.1.4.2. 高/低位算法(Hi/Lo ...
5. 对象/关系数据库映射基础(Basic O/R Mapping) 5.1. 映射定义(Mapping declaration) 5.1.1. Doctype 5.1.2. hibernate-mapping 5.1.3. class 5.1.4. id 5.1.4.1. Generator 5.1.4.2. 高/低位算法(Hi/Lo ...