频 道 直 达 - 新闻 - 培训 - 软件 - 教程 - 前沿 - 组网 - 系统应用 - 安全 - 编程 - 存储 - 操作系统 - 数据库 - 服务器 - 专题 - 产品 - 案例库 - 读书 - 博客 - BBS
51CTO.COM_中国最大的网络技术网站
找资料:

3.1.3 数据访问模式

作者: 罗江华 朱永光 出处:电子工业出版社  2008-03-17 15:44    砖    好    评论   进入论坛
阅读提示:《.NET Web高级开发》可以使读者通过阅读进一步的了解和掌握.NET,本文介绍了数据访问模式。

3.1.3  数据访问模式

1.模式1——在线访问(如图3-4所示)

在线访问是最基本的数据访问模式,也是以前在实际开发过程中最常采用的。这种数据访问模式会占用一个数据库连接,读取数据,每个数据库操作都会通过这个连接不断地与后台的数据源进行交互。早期的数据访问技术都使用的是这种模式,如ODBC,ADO,JDBC 1.0等。具体表现示意如图3-4所示。

 
图3-4 

2.模式2——Data Access Object(如图3-5所示)

DAO 模式是标准 J2EE 设计模式之一,开发人员常常用这种模式将底层数据访问操作与高层业务逻辑分离开。一个典型的 DAO 实现通常有以下组件:一个 DAO 工厂类、一个 DAO 接口、一个实现了 DAO 接口的具体类和数据传输对象(有时称为值对象)。这当中具体的 DAO 类包含了特定数据源的访问逻辑。具体表现示意如图3-5所示。

 
图3-5

3.模式3——Data Transfer Object(如图3-6所示)

Data Transfer Object 也是经典 EJB 设计模式之一,用于解决在线访问模式和DAO模式中值对象的诸多问题。 DTO 本身是这样一组对象或是数据的容器,它需要跨不同的进程或网络的边界来传输数据。这类对象本身应该不包含具体的业务逻辑,并且通常这些对象内部只能进行一些诸如内部一致性检查和基本验证之类的方法,而且这些方法最好不要再调用其他的对象行为。具体表现示意如图3-6所示。

 
图3-6

在具体设计这类对象( DTO )的时候,通常可以有两种选择:

(1)使用编程语言内置的集合对象。

(2)通过创建自定义类来实现 DTO 对象。

具体实现中有许多方法试图将上述这两种方法的优点结合在一起。第一种方法是代码生成技术,该技术可以生成脱离现有元数据(如可扩展标记语言 ( XML ) 架构)的自定义 DTO 类的源代码;第二种方法是提供更强大的集合,尽管它也是平台内置的一般的集合,但它将关系和数据类型信息与原始数据存储在一起,比如 IBM 提出的 SDO 技术或是微软 ADO.NET 中的 DataSet 就支持这类方法。

无论采用上述的哪种方法,当有了 DTO 对象之后,就需要用数据来填充它。在大多数情况下,DTO 内部填充的数据往往来自于多个其他种类的对象;由于 DTO 对象中很少有具体的数据操作方法,因此它很难从其他对象中直接提取数据。这种设计是有道理的,因为如果不让 DTO 对象知道如何调用其他对象的方法,我们就可以在不同的场合直接重用 DTO 对象,这样一旦其他对象发生更改,我们无须修改 DTO 对象的设计。

4.模式4——离线数据模式

离线数据模式是这样一种数据访问模式。

·以数据为中心:数据从数据源获取之后,将按照某种预定义的结构(这种结构可以是 SDO 中的 Data 图表结构,也同样可以是 ADO.NET 中的关系结构)存放在系统中,成为应用的中心。

· 离线:对数据的各种操作独立于各种与后台数据源之间的连接或者事务。

· 与 XML 集成:离线数据集所维护的数据可以方便地与 XML 格式的文档之间互相转换。

· 独立于数据源:离线数据模式的不同实现定义了数据的各异的存放结构和规则,这些都是独立于具体的某种数据源的。

现在,离线数据访问技术有多种实现:

·WebSphere 平台中的实现——SDO。

·在 JDBC v3.0 规范中支持的 CachedRowSet。

·微软 .NET 框架下的 ADO.NET 技术。

5.模式5——对象/关系映射(O/R Mapping: Object/Relation Mapping)

ORM以一种特殊的访问模式最近流行起来,现在已经成为一种重要的数据访问技术。下面会对ORM进行详细介绍。

【责任编辑:杜书 TEL:(010)68476606】

回书目   上一节   下一节
专题
企业Web安全威胁在线评估系统
ASP.NET 2.0基础开发指南
.NET移动与嵌入式技术专题
.NET Framework新手入门专题
VS.NET实用开发专题
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 最 大 的 网 络 技 术 网 站 ·
技 术 成 就 梦 想
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。