webserivce笔记Word格式.docx
- 文档编号:15929669
- 上传时间:2022-11-17
- 格式:DOCX
- 页数:25
- 大小:543.62KB
webserivce笔记Word格式.docx
《webserivce笔记Word格式.docx》由会员分享,可在线阅读,更多相关《webserivce笔记Word格式.docx(25页珍藏版)》请在冰豆网上搜索。
这就是说,你能够用编程的方法通过Web来调用这个应用程序。
对Webservice更精确的解释:
Webservices是建立可互操作的分布式应用程序的新平台。
作为一个Windows程序员,你可能已经用COM或DCOM建立过基于组件的分布式应用程序。
COM是一个非常好的组件技术,但是我们也很容易举出COM并不能满足要求的情况。
Webservice平台是一套标准,它定义了应用程序如何在Web上实现互操作性。
你可以用任何你喜欢的语言,在任何你喜欢的平台上写Webservice,只要我们可以通过Webservice标准对这些服务进行查询和访问。
Webservices是一个基于因特网的应用程序模块,在遵守由一个协议集组成的特殊的技术格式下进行对象组件之间的远程互连交互。
包括数据怎么表示,数据怎么传输,Web服务怎么描述,信息怎样获取。
这样的描述太抽象,具体一下,在Web服务中,XML是数据的格式,SOAP是调用Webservices的协议,WSDL是描述Web服务的格式,而UDDI是Web服务登记,查找和利用的组合。
四个方面组成了整个Web服务架构。
Webservices的发展非常迅速,这些新规范(SOAP、WSDL和UDDI)的构建虽然时间不长,却已经对设计、开发和部署基于Web的应用产生了巨大的影响。
不管你的Webservice是用什么工具,什么语言写出来的,只要你用SOAP协议通过HTTP来调用它,总体结构都一致。
通常,你用你自己喜欢的语言(如VB6或者VB.NET)来构建你的Webservice,然后用SOAPToolkit或者.NET的内建支持来把它暴露给Web客户。
于是,任何语言,任何平台上的客户都可以阅读其WSDL文档,以调用这个Webservice。
客户根据WSDL描述文档,会生成一个SOAP请求消息。
Webservice都是放在Web服务器(如IIS)后面的,客户生成的SOAP请求会被嵌入在一个HTTPPOST请求中,发送到Web服务器来。
Web服务器再把这些请求转发给Webservice请求处理器。
对VB6程序来说,Webservice请求处理器是一个与SOAPToolkit组件协同工作的ASP页面或ISAPIextension。
而对VB.NET程序来说,Webservice请求处理器则是一个.NETFramework自带的ISAPIextension。
请求处理器的作用在于,解析收到的SOAP请求,调用Webservice,然后再生成相应的SOAP应答。
Web服务器得到SOAP应答后,会再通过HTTP应答的方式把它送回到客户端。
webservice与其它技术的比较.
远程方法调用(RemoteMethodInvocation,RMI),可以在不同的Java虚拟机(JVM)之间实现对象与对象的通信。
JVM可以位于相同或不同计算机上,在多个JVM中,一个JVM可以调用存储在其它JVM的对象的方法。
它和webservice都可以实现分布式开发,不同的是rmi只能用在客户端和服务端都是java的环境之下,而webservice则没有这个限制。
分布式计算中间件,如Corba,快速发展,当激烈的和全球的竞争使以传统方式开发和维护复杂的系统越来越困难的时候。
Corba可以让你调用在分布是对象上的操作,而不用关心它的应用底层的环境。
传统的Corbar定义了一个软总线框架,制定了有标准接口的对象服务,利用Corba我们可以集成和组合大型,复杂的分布式应用系统。
但传统的Corba有它的缺点:
Nostandardwaytodeployobjectimplementations:
没有标准的配置对象应用的方式。
如:
没有标准的方式分布对象应用,在它们的执行上下文安装,或在特定的ORB激活应用。
因此,系统设计者必须用adhoc策略去实例化在系统中的对象。
进一步说,因为对象可能要互相依靠,实例化可能在一个大型的系统变得复杂。
webservice的优缺点。
长项一:
跨防火墙的通信
如果应用程序有成千上万的用户,而且分布在世界各地,那么客户端和服务器之间的通信将是一个棘手的问题。
因为客户端和服务器之间通常会有防火墙或者代理服务器。
在这种情况下,使用DCOM就不是那么简单,通常也不便于把客户端程序发布到数量如此庞大的每一个用户手中。
传统的做法是,选择用浏览器作为客户端,写下一大堆ASP页面,把应用程序的中间层暴露给最终用户。
这样做的结果是开发难度大,程序很难维护。
举个例子,在应用程序里加入一个新页面,必须先建立好用户界面(Web页面),并在这个页面后面,包含相应商业逻辑的中间层组件,还要再建立至少一个ASP页面,用来接受用户输入的信息,调用中间层组件,把结果格式化为HTML形式,最后还要把“结果页”送回浏览器。
要是客户端代码不再如此依赖于HTML表单,客户端的编程就简单多了。
如果中间层组件换成WebService的话,就可以从用户界面直接调用中间层组件,从而省掉建立ASP页面的那一步。
要调用WebService,可以直接使用MicrosoftSOAPToolkit或.NET这样的SOAP客户端,也可以使用自己开发的SOAP客户端,然后把它和应用程序连接起来。
不仅缩短了开发周期,还减少了代码复杂度,并能够增强应用程序的可维护性。
同时,应用程序也不再需要在每次调用中间层组件时,都跳转到相应的“结果页”。
从经验来看,在一个用户界面和中间层有较多交互的应用程序中,使用WebService这种结构,可以节省花在用户界面编程上20%的开发时间。
另外,这样一个由WebService组成的中间层,完全可以在应用程序集成或其它场合下重用。
最后,通过WebService把应用程序的逻辑和数据“暴露”出来,还可以让其它平台上的客户重用这些应用程序。
长项二:
应用程序集成
企业级的应用程序开发者都知道,企业里经常都要把用不同语言写成的、在不同平台上运行的各种程序集成起来,而这种集成将花费很大的开发力量。
应用程序经常需要从运行在IBM主机上的程序中获取数据;
或者把数据发送到主机或UNIX应用程序中去。
即使在同一个平台上,不同软件厂商生产的各种软件也常常需要集成起来。
通过WebService,应用程序可以用标准的方法把功能和数据“暴露”出来,供其它应用程序使用。
例如,有一个订单登录程序,用于登录从客户来的新订单,包括客户信息、发货地址、数量、价格和付款方式等内容;
还有一个订单执行程序,用于实际货物发送的管理。
这两个程序来自不同软件厂商。
一份新订单进来之后,订单登录程序需要通知订单执行程序发送货物。
通过在订单执行程序上面增加一层WebService,订单执行程序可以把“AddOrder”函数“暴露”出来。
这样,每当有新订单到来时,订单登录程序就可以调用这个函数来发送货物了。
长项三:
B2B的集成
用WebService集成应用程序,可以使公司内部的商务处理更加自动化。
但当交易跨越供应商和客户、突破公司的界限时会怎么样呢?
跨公司的商务交易集成通常叫做B2B集成。
WebService是B2B集成成功的关键。
通过WebService,公司可以把关键的商务应用“暴露”给指定的供应商和客户。
例如,把电子下单系统和电子发票系统“暴露”出来,客户就可以以电子的方式发送订单,供应商则可以以电子的方式发送原料采购发票。
当然,这并不是一个新的概念,EDI(电子文档交换)早就是这样了。
但是,WebService的实现要比EDI简单得多,而且WebService运行在Internet上,在世界任何地方都可轻易实现,其运行成本就相对较低。
不过,WebService并不像EDI那样,是文档交换或B2B集成的完整解决方案。
WebService只是B2B集成的一个关键部分,还需要许多其它的部分才能实现集成。
WebService的缺点:
无状态、事务完整行很难控制,我们三流合一系统合erp的交互就是最好的例子,只适合传输DataSet这种总量级数据对象。
webservice的原理.
soap协议介绍.
SOAP(Simple
Object
Access
Protocol)简单对象访问协议SOAP是一个基于XML在分布式的环境中交换信息的简单的协议。
SOAP为在一个松散的、分布式的环境中使用XML对等的交换结构化的和类型化的信息提供了一中简单的机制。
SOAP本身并不定义任何应用语义,如编程模型或特定语义实现,它只是定义了一种简单的机制,通过一个模块化的包装模型和对模块中特定格式编码的数据的重编码机制来表示应用语义。
SOAP规范由四部分组成:
-
SOAP
envelop(SOAP
信封)-
encoding
rules(SOAP
编码规则)-
RPC
representation
(SOAP
表示)-
binding
绑定)SOAP
的消息结构-
一个SOAP
envelope(强制元素)-
Header
(可选元素)-
Body
(强制元素):
为该消息的最终接收者所想得到的那些强制信息提供了一个容器-
此外,SOAP定义了Body的一个子元素Fault用于报告错误。
wsdd介绍
wsdd用于对外提供服务的方法,以及返回结果进行配置,对服务端提供的服务进行发布。
在使用axis框架开发的时候,服务端要配置一个
文件。
内容如下:
<
?
xmlversion="
1.0"
encoding="
UTF-8"
>
deploymentxmlns="
http:
//xml.apache.org/axis/wsdd/"
xmlns:
java="
//xml.apache.org/axis/wsdd/providers/java"
<
globalConfiguration>
parametername="
adminPassword"
value="
admin"
/>
attachments.Directory"
C:
\eclipse\workspace\bookstore\WEB-INF\attachments"
attachments.implementation"
org.apache.axis.attachments.AttachmentsImpl"
sendXsiTypes"
true"
sendMultiRefs"
sendXMLDeclaration"
axis.sendMinimizedElements"
requestFlow>
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- webserivce 笔记