资源预览内容
第1页 / 共42页
第2页 / 共42页
第3页 / 共42页
第4页 / 共42页
第5页 / 共42页
第6页 / 共42页
第7页 / 共42页
第8页 / 共42页
第9页 / 共42页
第10页 / 共42页
亲,该文档总共42页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第一部分:J2EE概述3、Web Service 3.1 Web Service基本工作原理 3.2 XML 3.3 SOAP 3.4 WSDL 3.5 UDDI3.1 Web Service基本工作原理1 Web Service 是一种新的web应用程序分支 ,他们是自包含、自描述、模块化的应用,可 以发布、定位、通过web调用。Web Service 可以执行从简单的请求到复杂商务处理的任何 功能。一旦部署以后,其他Web Service应用 程序可以发现并调用它部署的服务。简单来说:Web Service是基于XML和 HTTPS(HTTP的安全版)的一种服务,其通信 协议主要基于SOAP,服务的描述通过WSDL ,通过UDDI来发现和获得服务的元数据。什么是Web ServicesWeb Services是一个崭新的分布式计算模型Web Services是一系列标准的集合SOAPWSDLUDDIWeb Services架构提供一个松散耦合的分布式 计算环境3.1 Web Service基本工作原理23从外部使用者的角度来看WebService是一种跨编程语言和跨操作系统平台的 远程调用技术所谓远程调用,就是一台计算机a上的一个程序可以 调用到另外一台计算机b上的一个对象的方法,譬如 ,银联提供给商场的pos刷卡系统。远程调用技术有什么用呢?商场的POS机转账 调用的转账方法的代码是在银行服务器上,还 是在商场的pos机上呢?4什么情况下可能用到远程调用技术呢?例如 ,amazon,天气预报系统,淘宝网,校内 网,百度等把自己的系统服务以webservice 服务的形式表现出来,让第三方网站和程序 可以调用这些服务功能,这样扩展了自己系 统的市场占有率。所谓跨编程语言和跨操作平台,就是说服务端 程序采用java编写,客户端程序则可以采用其 他编程语言编写,反之亦然!跨操作系统平台 则是指服务端程序和客户端程序可以在不同的 操作系统上运行。5除了WebService外,常见的远程调用技术还有 RMI(Remote method invoke)和CORBA, 由于WebService的跨平台和跨编程语言特点, 因此比其他两种技术应用更为广泛,但性能略 低。Web ServiceWeb Service的特征的特征1 1自描述Web服务的所有协议SOAP、WSDL、UDDI都 基于XML完好的封装性使用者仅看到Web Service提供的功能列表松散耦合接口保持不变,就不影响使用者采用一种适合Internet环境的消息交换协议 SOAP/XML使用标准协议规范使用开放的标准协议进行描述、传输和交换高度可互操作性可以跨越平台、语言进行调用Web 服务是部署并提供通过 Web 访问业务功能的技术 ;J2EE、CORBA 和其它标准是实现 Web 服务的技术高度可集成能力Web 服务使应用程序的集成比以前更快、更容易而且 更便宜提供一种一致化编程模型,从而在企业内外都可以利 用通用的基础设施并以一种通用的方法进行应用程序 集成动态性可以自动发现服务并进行调用Web ServiceWeb Service的特征的特征2 2与Web Application比较Web Service架构1工作过程服务提供者定义 Web 服务的服务描述并把它 发布到服务请求者或服务注册中心。服务请求者使用查找操作来从本地或服务注 册中心检索服务描述。使用服务描述与服务提供者进行绑定并调用 Web 服务实现或同它交互。Web Service架构2Web Service基于SOA(Service Oriented Architecture)架构,三个角色:服务提供者(Service Provider)从企业的角度看,这是服务的所有者。服务请求者(Service Requestor)从企业的角度看,这是要求满足特定功能的企业。 从体系结构的角度看,这是寻找并调用服务,或启 动与服务的交互的应用程序。服务注册中心(Service Registry)对于静态绑定的服务请求者,服务注册中心是体系 结构中的可选角色三个基本操作发布(Publish)直接发布:服务提供者直接向服务请求者发送 WSDL 文档服务提供者还可以将描述服务的文档发布到主机本地 WSDL 注册中心、专用 UDDI 注册中心或 UDDI 运营商节点查找(Find):对于服务请求者,可能会在两个不同的生命周 期阶段中牵涉到查找操作:在设计时为了程序开发而检索服务的接口描述在运行时为了调用而检索服务的绑定和位置描述绑定/调用(Bind/Invoke)服务请求者使用服务描述中的绑定细节来定位、联系和调用 服务,从而在运行时调用或启动与服务的交互Web Service架构3Web 服务的构件服务服务是一个软件模块,它部署在由服务提供者提供 的可以通过网络访问的平台上。当服务的实现中利用到其它 的Web 服务时,它也可 以作为请求者。 服务描述服务描述包含服务的接口和实现的细节。其中包括 服务的数据类型、操作、绑定信息和网络位置。服务描述可以被发布给服务请求者或服务注册中心 。Web Service架构4程序员网校 www.it315.orgWebService的工作过程Web服务模型的元素一种标准的方法,用来代表数据与消息, 或者代表激活这些功能元素的调用一种标准的方法,用来描述Web服务完成 的工作如何被所服务的用户理解一种标准的方法,用来发现Web服务的提 供者三种不同的技术SOAPWSDLUDDI3.2 XML-什么是 XML?XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输数据,而非显示数据 XML 标签没有被预定义。您需要自行定义标签 。 XML 被设计为具有自我描述性。 XML 是 W3C 的推荐标准XML 与 HTML 的主要差异XML 不是 HTML 的替代。XML 和 HTML 为不同的目的而设计:XML 被设计为传输和存储数据,其焦点是数据 的内容。HTML 被设计用来显示数据,其焦点是数据的 外观。HTML 旨在显示信息,而 XML 旨在传输信息 。示例说明:xm文档l由三部分组成1、文档序言(Prolog)2、文档主体(Body)3、文档尾声(Epilog)代码说明:头部“表示处理指令 结束注意:xml必须小写version=“1,0“ 表示该文档采用的是XML1.0版本 ,可以 用单引号括起来,他必须是XML之后的第一个属性注意:version属性不能省略encoding=“gb2312“ 表示该文档采用简体中文编 码,采用哪种编码取决于你所用到的字符集注意:如果文档中使用的到中文,务必在文档 中声明encoding=“gb2312“是文档的主体部分注意:标签必须是成对出现,有开始有结束 “”,文档中只能只要一个根元素实践例子3.3 SOAPSOAP定义SOAP组成SOAP协议的结构SOAP核心技术SOAP用例SOAP定义SOAP:简单对象访问协议,简单对象访问 协议(SOAP)是一种轻量的、简单的、基 于 XML 的协议,它被设计成在 WEB 上交 换结构化的和固化的信息。SOAP组成1SOAP 封装(envelop),它定义了一个框 架,描述消息中的内容是什么,是谁发送 的,谁应当接受并处理它以及如何处理它 们;SOAP 编码规则(encoding rules),它定 义了一种序列化的机制,用于表示应用程 序需要使用的数据类型的实例;SOAP组成2SOAP RPC表示(RPC representation), 它定义了一个协定,用于表示远程过程调 用和应答;SOAP 绑定(binding),它定义了SOAP 使用哪种协议交换信息。使用 HTTP/TCP/UDP协议都可以。SOAP协议的结构SOAP 消息格式:SOAP 标头目前主要在web服务中运用。SOAP核心技术1SOAP采用了已经广泛使用的两个协议 :HTTP 和XML。 -HTTP用于实现 SOAP 的RPC 风格的 传输 -XML 是它的编码模式即SOAP 通讯协议使用 HTTP 来发送XML 格式的信息SOAP核心技术2SOAP 消息基本上是从发送端到接收端的 单向传输,但它们常常结合起来执行类似 于请求 / 应答的模式。所有的 SOAP 消息都使用 XML 编码。一条 SOAP 消息就是一个包含有一个必需的 SOAP 的封装包,一个可选的 SOAP 标头 和一个必需的 SOAP 体块的 XML 文档。SOAP用例11.SOAP客户端使用UDDI注册来查找Web服 务。2.客户端应用程序创建SOAP消息。3.客户端把SOAP消息传送给监听SOAP请求 的Web服务器上的JSP或ASP页面。SOAP用例24.SOAP服务器解析SOAP包并在其领域调用 合适的对象方法,在SOAP文档中包含的参 数中传递。5.请求对象执行指示的功能,并返回数据给 SOAP服务器,它把响应打包到SOAP封套 中。6.客户端接收对象,剥离出SOAP封套并把响 应文档发送给最初发出请求的程 序。SOAP总结SOAP是一种基于XML的协议,它用于在分 布式环境中发送消息,并执行远程过 程调 用。SOAP和 Web服务已为在XML上构建分布 式应用程序基础结构所需的一切都考虑好 了。SOAP是一种适用于所有类型的对象实体的 理想的媒介3.4 WSDL-WSDL定义WSDL(Web Service Description Language) Web服务描述语言是用XML 文档来描述Web服务的标准,是Web服务 的接口定义语言,可描述Web服务的三个 基本属性:1.服务做些什么服务所提供的操作(方法) 2.如何访问服务和服务交互的数据格式以及 必要协议3.服务位于何处协议相关的地址,如URLWSDL基本元素1Types - 数据类型定义的容器,它使用某种 类型系统(一般地使用XML Schema中的类 型系统)。 Message - 通信消息的数据结构的抽象类型 化定义。使用Types所定义的类型来定义整 个消息的数据结构。 Operation - 对服务中所支持的操作的抽象 描述,一般单个Operation描述了一个访问 入口的请求/响应消息对。 WSDL基本元素2PortType - 对于某个访问入口点类型所支持 的操作的抽象集合,这些操作可以由一个 或多个服务访问点来支持。 Binding - 特定端口类型的具体协议和数据 格式规范的绑定。 Port - 定义为协议/数据格式绑定与具体 Web访问地址组合的单个服务访问点。 Service- 相关服务访问点的集合。WSDL基本元素3所有的WSDL文档的根元素均是definitions 元素。该元素封装了整个文档,同时通过 其name提供了一个WSDL文档。除了提供 一个命名空间外,该元素没有其他作用。3.5 UDDI-UDDI 定义一套基于Web的分布式Web Service信息注 册中心的实现标准规范,同时也包括一组访问协 议的实现,使得企业能将自身的Web Service注 册上去,并让别的企业能够发现并访问这些Web Service。创建UDDI注册中心的目的就是帮助企 业发现并使用所需要的Web Service。简单来说,它是一个基于XML的跨平台的描 述规范,可以使世界范围内的企业在互联网上发 布自己所提供的服务、发现自己所需要的服务。UDDI 工作原理1简单来说,UDDI的工作方式和邮局公开 发行的电话黄页类似,它把特定企业的信 息和Web Services在Internet上广而告之, 并且提供具体
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号