11_《基于.NET的Web应用三层结构设计技术》
一、基本信息
标题:基于.NET的Web应用三层结构设计技术
发表时间:2003-04-20
作者:胡迎松 彭利文 池楚兵
来源:华中科技大学计算机科学与技术学院 华中科技大学计算机科学与技术学院 武汉 430074
关键词:3层体系结构;.NET;Web;service;ASP.NET;ADO.NET;类;
文献来源:基于.NET的Web应用三层结构设计技术
二、研究内容
摘要:
分析了传统3层体系结构的不足,给出了一种基于.NET技术的3层体系结构Web应用的设计方法,并示例说明了如何构建3层体系结构的Web应用系统。
引言:
Web体系结构的发展经历了两层体系结构和3层体系结构阶段。目前, 流行的3层Web体系结构主要有基于OMG 的CORBA、基于微软的COM+和基于SUN公司的RMI的分布式3层Web体系结构。3层体系结构将应用程序分成3个 不同的逻辑层次:表示层, 应用逻辑层和数据层。
这样的3层结构存在着许多缺陷:
(1) 互操作性能差。目前, 大量的应用程序是使用C++、Java、Visual Basic和其他各种各样的语言开发完成的。 如果这些应用程序要同其他语言开发的应用程序集成且进行数据交换, 则必须采用特殊的方法, 如文件传输和分析, 消 息队列, 还有仅适用于某些情况的API, 如IBM的高级程序到程序交流 (APPC) 等来完成的。因此互操作性差, 开发人 员要想开发不同类型的应用程序必须使用各种语言的编程工具, 使得开发周期很长。
(2) 难以跨平台运行。目前OS平台有:Windows, Unix, Linux以及很多的嵌入式OS系统, 开发人员在一种平台下 开发的程序要移植到其他平台上去运行, 是非常困难的事情。尽管分布式组件对象技术, 使得传统的应用程序在互操 作性以及跨平台运行有很大的提高, 但并没有从根本上解决问题。 Microsoft.NET是创建可互操作的分布式应用程序的新平台, 客户端和服务器间能够自由地用HTTP进行通信, 不 论两个程序的平台和编程语言是什么, 应用程序间通信不受现有Proxy和防火墙的限制, 真正做到了能跨平台、跨语言 运行。.NET平台内建了对Web Service的支持。Web Service与现在的组件技术不同之处在于它使用普遍存在的、独 立于平台、独立于软件供应商的标准的网络协议和数据格式 (如HTTP和XML) 进行通信, 主要目标是跨平台的可互操 作性。.NET技术的实质是建构在.NET CLR (Common Language Runtime:通用语言运行库) 和Assembly (装配) 技 术上。CLR允许对已经用通用语言运行库支持的编译过的任何代码进行紧密的交互作用, 如开发者用C#创建的对象, 可在Visual Basic中通过继承功能对它们进行扩展。
1. 基于.NET技术的Web应用
详细介绍了.NET Framework与三层架构。
以及SOA体系结构:
SOA体系结构定义了3种角色和角色之上的3种操作: ·
服务提供者角色:发布自己的服务, 并且对使用自身服务的请求进行响应;
服务代理者角色:注册已经发布的服务提供者, 对其进行分类, 并提供搜索服务;
服务请求者角色:利用服务代理者查找所需的服务, 然后使用该服务;
publish操作:使服务提供者可以向服务代理者注册自己的功能及访问接口;
find操作:使服务请求者可以通过服务代理者查找特定种类的服务;
bind操作:使服务请求者能够真正使用服务提供者。
Web service体系结构的一个基本原则就是使用标准的技术, 包括服务描述、通信协议以及数据格式等。
Web Se rvice采用的相关技术规范有:
(1) SOAP (Simple Object Access Protocol) 。即简单对象访问协议。它是用于交换XML编码信息的协议。SO AP用XML将消息编码, 因此在调用过程的任何一步都极易处理消息。调试SOAP消息的方便性使各种SOAP执行能快 速聚合在一起, 达到大范围的协同工作。
(2) WSDL (Web Service Description Language) 。它是用来描述Web Service或终端的一种XML语言, 它用于 定义Web Service以及如何调用它们。WSDL文档可用于动态发布Web Service、查找已发布的Web Service以及绑 定Web Service。WSDL将Web服务定义成一系列的端口, 每个端口用来表示从抽象端口类型到用于调用Web服务的 具体通信协议的一个映射。端口类型由一组与Service Provider交换信息的操作组成, 它支持对包含消息的数据类型 的定义。
(3) UDDI (Universal Description, Discovery and Integration) 。UDDI通过服务注册, 以及使用SOAP访问这些 注册信息的约定来实现在Web上描述并发现商业服务。UDDI计划的核心组件是UDDI商业注册, 它使用一个XML文档 来描述企业及其提供的Web服务。 借助XML和SOAP, 集成和交互的问题将从层次上被简化。XML提供了跨平台的数据编码和组织方法, 而SOAP建 立在XML之上, 定义了一种跨系统平台的信息交换的简单包装方法。绑定于HTTP之上的SOAP协议, 可以跨语言、跨 操作系统进行远程过程调用, 实现了编程语言和系统平台的无关性, 大大简化了不同企业系统之间的交互问题。
三、阅读结论
考古+1,引用作者结语:
Web应用是当今分布式应用最广泛的应用形式。基于.NET的3层结构在Web中的应用显著提高了应用程序的跨平 台性和互操作性, 增强了系统的灵活性、开放性。作为一项新兴技术, 不久的将来必定得到广泛的应用。
这项技术在当时作为新兴技术,之后确实得到了广泛的应用。直到现在,部分工业化ERP等仍然在使用这些技术。技术虽老却尚可一战。
四、参考文献
[1] 陈英学.ASP.NET深入编程[M].北京:北京希望电子出版社, 2001
[2] 王 超, 张 鹏.ASP/XML深入编程技术[M].北京:北京希望电子出版社, 2001
[3] 曾 宇, 张海盛.基于CORBA组件技术的三层数据库访问[J].计算机应用, 2001, 21 (5)