




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于Web Service的系统集成技术的应用基于Web Service的系统集成技术在网络教育平台中的应用王宇 才国清 王兴伟摘要:Web Service是Internet上新兴的应用通信和集成技术,本文先简单介绍了XML和Web Service技术,然后着重讨论了基于Web Service的系统集成技术的特点和优势,以及通过实际的开发实例介绍了基于Web Service的系统集成技术在网络教育平台实现中的应用。关键词:Web Service;系统集成;网络教育平台 System Integration Technique Based on Web Service and its Application in E-education Platform Realization 【Abstract】Web Service is a new technique for communication and integration of applications on Internet. In this article theres a view of XML and Web Service, and a discussion about the characters and advantages of system integration technique based on Web Service. By actual developing samples, I show how to use system integration technique in E-education platform realization.【Key words】Web Service;System Integration;E-education Platform1 引言随着信息技术与网络技术的发展和普及,基于Internet和Intranet的网络教育蓬勃发展;网络教育作为一种崭新的远程教育方式逐渐运用到实际的教学活动中,成为“数字化校园”重要的组成部分。作为网络教育的后台支持系统,网络教育平台也得到相应的发展,出现了很多成型的系统和实际产品,它们基本上实现了网络教育平台需要的三个基本系统课程及教学资料开发系统,教学支持系统(同步教学和异步教学)和教学管理系统1。但是,纵观现有的网络教育系统和产品,一定程度上存在着一些不足:教学和交互方式比较单一,不同的教学和交互子系统很难集成在一起,大多处于相对分离的状态;缺少通用的数据编辑和保存形式,不同操作系统和数据库平台上的子系统很难交互和共享数据;缺少有效的模块集成手段,基于不同平台的模块很难集成,系统的扩展性和伸缩性比较差。现有的网络教育平台的这些缺陷,在很大程度上与现有的系统集成技术的缺陷有关。针对现有网络教育系统和产品的不足之处,我们在实际的网络教育平台的设计和开发过程中,采用基于Web Service的系统集成技术,处理系统模块间控制和数据的集成,很大程度上提高了系统数据的通用性,降低了模块间的耦合程度,从而提高了网络教育系统的扩展性、伸缩性和兼容性,便于系统分担负载,提高网络教育系统的服务质量。2 XML及Web ServiceXML(eXtensible Markup Language,可扩展标记语言)是Internet上数据表示和数据交换的新标准。它是ISO(International Organization for Standardization,国际标准化组织)的SGML(Standard for General Markup Language,通用标记语言标准)的一个简化子集。XML关注信息本身,是Web上表示结构化信息的一种标准文本格式。与传统的注重页面信息显示的HTML(Hypertext Markup Language, 超文本链接标示语言)相比,关注于内容的XML具有以下诸多优点5:良好的可扩展性,语言简单有效,可自行定义标记;内容与形式的分离,主要刻画数据内容,不考虑显示效果;有严格的语法要求,便于分析统一和与数据库信息转换;便于传输,为纯文本形式,可通过Http协议直接传输,可跨越防火墙;等等。XML的出现和发展对于Internet和Intranet产生了巨大的影响。 在XML基础上发展起来的Web服务(Web Service)是一种革命性的分布是计算技术。它使用基于XML的消息处理作为基本的数据通讯方式,消除使用不同组件模型、操作系统和编程语言的系统之间存在的差异,使异类系统能够作为计算网络的一部分协同运行。开发人员可以使用像过去创建分布式应用程序时使用组件的方式,创建由各种来源的Web服务组合在一起的应用程序。由于Web服务是建立在一些通用协议的基础上,如HTTP(Hypertext Transfer Protocol, WWW服务程序所用的协议),SOAP(Simple Object Access Protocol,简单对象访问协议),XML,WSDL(Web Services Description Language,Web服务描述语言),UDDI(Universal Description,Discovery,and Integration,通用描述发现和集成协议)等,这些协议在涉及到操作系统、对象模型和编程语言的选择时,没有任何倾向,因此Web服务将会有很强的生命力。关于Web服务的W3C(World Wide Web Consortium,万维网联盟)标准逐渐出台;两个应用程序通过Web服务进行远程通信时,所需的标准核心构件7如下图所示:各大厂商也逐步推出了相关的Web Service开发环境和解决方案;在目前主流的操作系统平台上都有相应的开发环境,如:Windows平台上的Microsoft Visual Studio.Net;Windows和Linux平台上的Sun One Studio,IBM的WebSphere Studio;以及BEA 的WebLogic Workshop等。3 基于Web Service的系统集成在软件系统的开发过程中,系统集成主要实现系统的各部分(模块)之间的通讯和整合,将相对分散的子系统组成一个统一的整体,实现子系统间的功能控制和信息交互与共享。基于网络的系统集成技术已有了很多6,如:DCOM(Distributed Component Object Model,分布式组件对象模型)、CORBA(Common Object Request Broker Architecture,公用对象请求代理程序体系结构)和Java RMI(Java Remote Method Invocation,Java远端函数调用)等。但是这些传统的集成技术在很大程度上受到网络环境的限制,大多使用专有协议通过特别的端口进行远程通信,不能很好的支持客户段和服务器通过Internet进行通信。基于Web Service的集成技术作为一种新的面向函数和方法的应用集成技术,在很大程度上解决了原有集成技术在Internet远程通信方面的问题。Web Service基于XML文档进行服务描述,服务请求和反馈结果,可以在Internet上通过HTTP协议进行传递,很容易的被访问和返回结果。同时,由于Web Service的相关标准都是W3C的开放协议,与平台和操作系统无关,不同的平台和操作系统上的Web Service的实现在很大程度上可以做到互操作,这就使异构平台上应用的集成变得很容易。此外,过去使用的基于RPC(RPC - Remote Procedure Call,远程过程调用)和API(Application Programming Interface,程序编程接口)的集成技术都是一种函数级的静态解决方案(即使它们在客户机和服务器通讯时使用XML);Web Service则是一种动态的集成方案,所有的服务都可以通过UDDI标准动态地被发现、绑定和使用,容易适应系统的变动,提高系统的灵活性和伸缩性。使用Web Service技术进行系统集成和过去使用其它面向函数和方法的技术进行集成类似:在进行初始设计的时候主要考虑不同应用之间,系统不同模块之间消息及数据传递的需求;根据具体需求设置相应的接口,描述接口特性;针对不同应用的平台选择相应的Web Service组件,进行相应设置;实现不同应用的接口,进行相应调试;实际运行,应用程序间进行协同调试。使用Web Service进行系统集成的基本模式(不同应用之间)8,如下图:图2 Web服务应用架构(应用间集成)4 基于Web Service的系统集成技术在网络教育平台实现中的应用我们开发的远程教育系统的初始版本,是完全基于Windows平台的。整个系统集中在一个服务器上,采用两层的Web开发架构,各个模块直接对数据库进行操作,通过Form提交数据,直接引用等方式进行消息传递。造成系统模块间的耦合过于紧密,系统的可移植性,扩展性和均衡负载等方面都比较差。在进行新版本系统的设计时,考虑到原有系统的诸多不足,我们在提高系统的可扩展性,降低各个系统模块之间的耦合程度等方面多了许多考虑,在模块集成方面主要使用应用层面上的基于Web Service系统集成技术,使用基于不同平台上的Web Service技术实现系统模块之间的消息和数据传递。我们的网络教育平台的基本模块结构如下图:图3 远程教育系统模块结构图接下来以教学管理模块和同步教学模块之间的集成,来说明如何在实际的远程教育开发过程中使用Web Service集成技术。教学管理模块主要完成远程教学的教学组织和人员管理;同步教学模块是具体教学应用中的一部分,主要提供实时的网络课堂教学功能。同步教学模块中所需要的课程信息,学生和教师等信息都需要从教学管理模块中获得。在原有系统中,两个模块工作在同一个平台上,访问同一个数据库,获取相应的信息,关联比较强。为了减少这两个模块之间的关联,我们在重新设计的时候,考虑将这两个模块独立起来,在学生或教师进入同步教学模块的时候只传递最必要的信息,如课程号和用户序号;其他大部分的相关用户和系统信息都进行抽象,通过Web Service方式在教学管理模块中实现,在实时教学系统中进行访问。这样保证了两个模块之间可以很容易的分离和整合,也可以工作在不同的操作系统平台上(Windows或Linux等)。这两个模块之间集成的具体实现过程(以Microsoft.Net平台的实现为例)。(1) 系统需求分析(2) 系统设计,划分系统模块确定教学管理和同步教学分别独立成一个模块,教学管理模块主要实现对网络远程教学的教学组织和人员管理。(3) 确定模块间的接口描述根据需求分析和系统模块设计,确定模块之间接口的类型,需要传递的参数和数据类型。教学管理模块需要提供的接口:用户信息:用户类型,编号;教师账户:姓名,性别,;学生账户:姓名,性别,届,班级,。课程信息:课程名,授课时间,授课地点,。同步教学模块需要提供的接口:授课情况:学生出勤情况,教师出勤情况,课程实际时间,。(4) 确定实现方法使用基于Microsoft.Net的Web Service支持平台,C#开发语言;在Microsoft Visual Studio.Net集成开发环境中开发。抽象出一下需要实现的接口:教师个人信息(姓名,性别),学生个人信息(姓名,性别,届,班级),课程信息(课程名,授课时间,授课地点),学生出勤情况,教师出勤情况。(5) 具体实现,测试以查询教师个人信息(姓名,性别)为例:教学管理模块:定义WebSearchTeacherInfo命名空间;定义结构:包括教师ID,姓名,性别和结构信息有效标志。public struct teacherInfopublic string ID;public string Name;public string Sex;M-male,F-femalepublic boolean valid;if this info is valid接口实现:public teacherInfo GetTeacherInfo(string id)teacherInfo myReturn = new teacherInfo();根据参数,查询相应的数据表;如果有对应信息,则将查询值赋给结构myReturn,同时给结构myReturn的valid子项置为true;如果参数不合法或是查询不到对应信息,将结构myReturn的valid子项置为false;将结构myReturn作为返回值返回。同步教学模块: 代码中引入Web服务相应的命名空间;在其他代码中可以通过调用GetTeacherInfo方法,调用远端的Web服务程序,查询相应的教师个人信息。Visual Studio.Net集成开发中,Web Service中使用SOAP等协议传输会话的机制大部分都已经被封装,对于一般开发者是透明的,在很大程度上提高了开发效率;但同时也造成开发人员对于系统的可控程度下降。使用J2EE平台实现的时候,需要定义SOAP消息头等XML脚本,以能够实现基本的Web服务功能。在不同平台开发的时候,需要注意采用W3C的Web Service标准和模式,尽量不使用具体实现平台的扩展功能,以免影响系统的兼容性。(6) 发布Web服务,进行安全等方面的工作,完成系统集成使用WSDL实用程序生成代理代码,发布Web服务程序;在统一的服务发布服务器上,通过UDDI服务实现发现Web服务功能,便于查询系统各模块提供的Web Service服务。同时使用Web服务的身份验证和授权技术,提高系统的安全性。由于Web Service在安全性方面的标准刚刚出台,还没有实际应用,所以系统在身份认证和授权技术方面的实现还比较简单,只提供简单的密码和授权认证。通过使用基于Web Service的系统集成技术,我们比较容易的把基于不同操作系统平台和数据库平台的子应用集成在一起。比如:基于Windows2000操作系统和Microsoft SQL Server数据库的异步教学系统,基于Linux操作系统和Postgres数据库的教学论坛系统,等。5 结束语使用Web Service技术进行系统集成,提高了系统的可扩展性和兼容性,增强了网络教育平台的适应能力,提高了系统的服务质量。因为Web Service的标准还在发展过程中,逐渐会有新的特性加入进来,特别是在安全性方面。此外,基于Web Service的应用在开发中还有
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025湖南省社会科学院(湖南省人民政府发展研究中心)招聘高层次人才14人模拟试卷及1套参考答案详解
- 2025河北科技工程职业技术大学选聘52人考前自测高频考点模拟试题及完整答案详解1套
- 2025年商标许可使用合同5篇
- 2025广西来宾市忻城县政府投资审计中心招聘见习生2人考前自测高频考点模拟试题(含答案详解)
- 2025年上海大学公开招聘岗位(第二批)模拟试卷及参考答案详解一套
- 2025昆明市盘龙区汇承中学招聘教师(12人)模拟试卷及答案详解(易错题)
- 2025贵州天柱县第二季度(第一次)招聘8个全日制城镇公益性岗位模拟试卷含答案详解
- 2025广东省农业科学院设施农业研究所招聘劳动合同制人员1人考前自测高频考点模拟试题附答案详解(黄金题型)
- 2025届特发集团春季校园招聘模拟试卷及1套完整答案详解
- 2025年威海市水产学校公开招聘教师(7人)模拟试卷及答案详解(全优)
- 2025年初级药师资格考试试题(附答案)
- 2025广东云浮市检察机关招聘劳动合同制司法辅助人员17人备考考试题库附答案解析
- 人工智能与建筑产业体系智能化升级研究报告
- 包覆拉拔法制备铜包铝、铜包钢双金属导线的多维度探究与展望
- 大气的受热过程教学课件
- 茶叶农药知识培训课件
- 【2025秋季新修订教材】统编语文三上第六单元《19 香港璀璨的明珠》公开课一等奖创新教学设计
- 2025-2026学年人教版(2024)初中数学七年级上册教学计划及进度表
- 人教版数学二年级上册第一单元 分类与整 理 综合素养测评A卷(含答案)
- 2025版煤矿安全生产标准化管理体系考试题及答案(采煤部分)
- 油田冬季八防安全经验分享
评论
0/150
提交评论