浅谈Web Services分布式技术的应用

来源 :计算机光盘软件与应用 | 被引量 : 0次 | 上传用户:cc_7722
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘 要:Web Services是下一代分布式系统的核心,是发布在网络上并提供API以供其他程序调用的封装的实体,是在网络上进行分布式计算的基本构造块。Web Services也是描述了某些操作的接口,该接口隐藏了服务实现的细节,允许应用程序通过独立于服务实现、独立于硬件或软件平台、独立于编写服务所用的编程语言的方式使用该服务。本文重点介绍了Web Services,通过创建一个简单的Web服务,将SQLServer2005服务器中的Sender数据库中Sender_User表中的用户信息暴露给客户端,通过GetProducts()方法返回一个数据集供客户端使用,实现Web服务的调用为例,实现了在当前环境下最高的可集成性,为许多厂商提供大量的免费工具来快速生成和部署Web Services,比较容易实现。
  关键词:Web Services;封装;实体;接口
  中图分类号:TP393.02
  1 Web Service概述
  1.1 典型的Web Service结构
  一般过程是,Web Service提供者使用合适的编程语言和开发工具开发并部署Web Service,客户应用程序根据Web Service的WSDL服务描述文档中的信息生成一个SOAP请求消息来调用这个Web Service。通常Web Service都是位于Web服务器(如IIS、Apache等)的后面,客户端生成的SOAP请求会被嵌入在一个HTTPPOST请求中,发送到Web服务器,Web服务器在把这些请求转发给Web Service请求处理器(Request Handler)。收到消息后,Web Service请求处理器就会解析SOAP请求,然后再生成相应的SOAP响应信息。Web服务器得到SOAP应答后,在通过HTTP方式回送给客户端。
  1.2 Web Service体系结构
  Web Service体系结构是基于三种角色(服务提供者、服务注册中心和服务请求者)之间的交互。这些角色和操作一起作用于Web服务构件:Web服务软件模块及其描述。服务提供者定义Web服务的服务描述并把它发布到服务请求者或服务注册中心。服务请求者使用查找操作来从本地或服务注册中心检索服务描述,然后使用服务描述与服务提供者绑定,并调用Web Service实现或同它交互。
  2 应用实现
  (1)用.NET2005创建新的网站“Web Services”
  (2)右键“解决方案管理器”创建新的Web服务,取名为Products
  (3)打开Products.cs。要使用SQLServer提供的数据库系统服务,需要在文件头添加引用System.Data和System.Data.SqlClient命名空间
  (4)在Products类中添加GetProducts方法,其代码如下
  usingSystem;usingSystem.Web;usingSystem.Collections;usingSystem.Web.Services;usingSystem.Web.Services.Protocols;usingSystem.Data;usingSystem.Data.SqlClient;
  [WebService(Namespace="http://tempuri.org/")][WebServiceBinding(ConformsTo=WsiProfiles.BasicProfile1_1)]publicclassProducts:System.Web.Services.Web Service
  {publicProducts(){}[WebMethod(Description="返回用户列表")]
  publicDataSetGetProducts()
  {SqlConnectionconn;
  SqlDataAdaptermyDataAdapter;DataSetmyDataSet=newDataSet();
  //打开数据库连接conn=newSqlConnection("DataSource=(local);InitialCatalog=Northwind;IntegratedSecurity=True");stringcmd="Select*FromProducts";myDataAdapter=newSqlDataAdapter(cmd,conn);//填充myDataSet,并将其返回myDataAdapter.Fill(myDataSet,"Products");returnmyDataSet;
  (5)测试Web服务Products,单击Get Products方法的超链接(如图1),单击“调用”按钮,可以得到由Get Products方法返回的数据集转换而来的XML文档。
  图1 GetProducts方法的超链接
  接下来,需要把GetProducts方法返回的数据集结果用于ASP.NET2.0创建的应用程序,以便对这些数据进行进一步的加工处理。打开该网站的Default.aspx切换到设计视图,在Web窗体中添加一个Button控件和一个GridView控件
  (6)在网站中添加Web引用,在URL框中输入ProductsWeb服务的地址,本例为http://localhost:2624/Web Services/Web Services.asmx,默认其中Web引用名为Localhost。
  (7)双击“获取服务”按钮,添加Button_Click方法,其代码如下。
  protectedvoidButton1_Click(objectsender,EventArgse)
  {//实例化Products代理对象
  localhost.Productsws=newlocalhost.Products();
  //调用GetProducts()方法,将其结果赋值给GridView1的DataSource
  GridView1.DataSource=ws.GetProducts();
  GridView1.DataBind(); //数据绑定
  (8)保存并运行网站。单击“获取服务”按钮系统运行。
  3 总结
  Web Services所有公共的协约都使用开放的标准协议进行描述、传输和交换,完全屏蔽了不同软件平台的差异,各种技术都可通过标准的协议进行互操作,实现了在当前环境下最高的可集成性。Web Services不像现有的分布式计算系统具有复杂接口,许多厂商提供大量的免费工具来快速生成和部署Web Services,比较容易实现。
  参考文献:
  [1]祝建江.基于NETWeb Service的多层分布式体系机构的研究于应用[J].浙江工业大学学报,2006,5:56-58.
  [2]周刚.Web服务解决方案分析[J].天津理工学院学院:计算机工程,2006,2:36-38.
  [3]间新庆,李文锋,陈定方.Web服务的体系结构和应用[J].武汉理工大学学报,2002,3:52-54.
  [4](美)DanWahlin.ASP.NET2.0AJAX高级编程[M].2008.
  [5](美)里克特,李建忠..NET框架程度设计[M].北京:清华大学出版社,2003.
  [6]邹建峰,周建峰,项细威.C#企业开发案例精解[M].北京:人民邮电出版社,2006.
  作者简介:王金环(1979-),女,山东菏泽人,助教,硕士研究生,研究方向为计算机网络与语义网;李宝敏,教授,硕士生导师,研究方向为计算机系统结构、计算机网络与语义网;李艳,讲师,硕士研究生,研究方向是计算机应用技术。
  作者单位:西安培华学院,西安 710125
其他文献
民主革命时期,中国共产党领导全国人民经过艰苦卓绝的革命斗争,推翻了压在中国人民头上的三座大山。在这一艰苦革命过程中,军队建设具有举足轻重的作用。中国共产党在军队软环境
本篇文章主要对于我国当前高校计算机涉及到的网络安全管理工作问题,依据技术应用、学校管理政策这两个角度来对于管理方式进行了探讨,明确指出了各种技术手段实现所需的协同工
云计算为用户通过网络访问云端的数据、存储和信息服务提供了极大便利,海量数据的快速存储和快捷查询也成为制约云计算快速发展的瓶颈,面向云计算的数据管理技术正日益成为研究
苏辛虽号为一派,实际上审美趣向迥然不同。不同的人生历练、思想性格、历史背景造就了两位巨擘不同的美学境界,一个豪迈洒脱,一个苍凉悲壮。苏轼的豪放更多以自我为中心,在儒道释
认为"有一点通货膨胀有好处",从而放松对通货膨胀警惕的观点十分有害.必须从理论上认清通货膨胀的"隐性危害".所谓"隐性危害",是作用比较间接、比较缓慢,影响比较深远的危害,
管理学本土化对于提升中国公共管理水平有着重要意义。当前,中国管理学发展过程中存在一些问题,偏重对西方理论的移植和运用,但忽视了当前中国管理实践所出现的问题。中国管
近代遗老梁济的"死义",表明一心期望"旧学复兴"的近代遗老们,所缺乏的是一种扬弃和批判旧文化所必需的心理承受力,他们承受不了一种非中国化的价值体系在生活中成为普遍观念
随着教育改革的不断深入,以收付实现制为核算基础的高校会计制度局限性正在慢慢地显露出来,因此,如何加强对财务资料和会计核算数据的管理分析,如何弥补现有会计核算的局限性