webservice基础
最近在工作中,由于工作内容是开发服务总线,我开始接触了webservice的知识,作为刚入行的菜鸟的我,学习一直伴随我的工作和生活。对于webservice,以下总结的是webservice系列之一:webservice基础。
我将以下几个方面去分析:
- 什么是WebService
- 它能做什么
- 为什么要学习WebService
- webservice原理与体系结构
一、什么是WebService?
WebService是一种面向服务的架构技术,通过标准的Web协议提供服务,目的是保证不同平台的应用服务可以互操作。
从表面上看,Web service 就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。这就是说,你能够用编程的方法通过Web来调用这个应用程序。 比如如果我们是汽车制造商的话,制造汽车需要零件,但是我们自己并不生产零件,而零件是由零件供应商提供。那WebService就相当于这里的零件供应商,它不但为我们提供服务,还为很多汽车制造商提供服务。那我们只需要按照和零件供应商的协议拿到零件制造汽车就可以。
二、webservice能做什么
- 让任何平台上的用任何语言编写的服务进行交互。
- 将应用程序功能概念化成任务,从而形成面向任务的开发和工作流。这使得更抽象的软件能够为工作在业务层面具有较少软件分析技术的用户所用。
- 允许松耦合,这意味着,每当其中某个或多个服务在设计或实现中发生改变时,服务应用程序之间的交互不会因此而中断。
- 使现有的应用程序能适应不断变化的业务条件和客户需求。
- 向现有或遗留软件应用程序提供服务接口,而无需改变原来的应用程序,从而使这些应用程序完全可以运行在这种服务环境下。
- 引入其他一些与原有功能无关的管理或操作管理功能,比如可靠性、责任性和安全性等等,从而在业务计算环境中增加其通用性和实用性。
三、为什么要学习WebService?
学习WebService可以将我们的服务(一段代码)发布到互联网上,让别人来调用;也可以调用别人的Web服务,来完成我们的需求,减少开发周期。
四、webservice原理与体系结构
1.webservice的实现原理,如图:
2.webservice的体系结构
其中关于UDDI SOAP以及WSDL构成了webservice的三要素。
1.UDDI
- UDDI 提供发布和发现已注册Web服务的标准机制,并且还充当存储基于WSDL的服务描述的注册表和仓库。
- UDDI(Universal Description, Discovery, and Intergration, 通用描述、发现和集成协议)定义了一种在通用注册表(用户需连接到该注册表,以发现和查找已注册的服务)中注册Web服务并划分其类别的机制。查询UDDI注册表以寻找某项服务时,将返回描述该服务接口的WSDL描述。通过WSDL 描述,开发人员可以开发出与服务提供方通信的SOAP客户端接口。
- UDDI可以实现为公共注册表,以支持全球范围的团体,也可以实现为私有注册表,以支持企业或私人团体。
2.SOAP
- SOAP提供传输数据的标准方式,充当在服务提供方和服务请求方之间激活服务的消息交换服务。
- SOAP = 在HTTP的基础上+XML数据
3.WSDL
- WSDL驻留在服务容器中,定义了一种提供Web服务描述的标准化方式。
- WSDL(Web Services Description Language,Web 服务描述语言)是基于XML模式的规范,用于将Web服务描述为操作集,并将数据输入/输出参数描述为消息。WSDL还定义使用绑定机制将任何传输协议、数据格式或结构附加到抽象消息、操作或终端的通信模型。
- 通过XML形式说明服务在什么地方-地址,通过XML形式说明服务提供什么样的方法 – 如何调用。
相关推荐
ASP.NET AJAX深入浅出系列课程(6):客户端访问WebService(下):原理与细节
ASP.NET AJAX深入浅出系列课程(5):客户端访问WebService(中):参数类型的序列化与反序列化
ASP.NET AJAX深入浅出系列课程(4):客户端访问WebService(上):基本使用方式_PDF.zip
ASP.NET AJAX深入浅出系列课程(5):客户端访问WebService(中):参数类型的序列化与反序列化
这是本人练习调用webservice接口的实例:通过省份获取城市,在获取天气信息.一切说明都在附件中,直接下载导入到eclipse,开发环境正常,并且能上网,即可运行成功。希望能帮到需要的小伙伴。
文档详细介绍了用myeclipse生成webservice的方法步骤,以及...第一步:myeclipse生成webservice 第二部:发布webservice 第三步:在sap系统生成webservice代理 第四步:生成port 第五步:用实例调用生成的webservice
WebService介绍(三):使用WebService代理类
NULL 博文链接:https://zwustudy.iteye.com/blog/1820439
创建WebService
JAVA的WebService支持V3.0.pdf JAVA6开发WebService WebService CXF学习:整合Spring框架
webservice获取List案例,并以Web工程为客户端进行测试,本代码可以直接运行,有注释
WebService::Simple::AWS - 使用 WebService::Simple 的 Amazon Web Service 的简单接口 概要 use WebService::Simple::AWS; my $service = WebService::Simple::AWS->new( base_url => '...
webservice摘录webservice摘录webservice摘录webservice摘录webservice摘录webservice摘录webservice摘录webservice摘录webservice摘录质
SQL Server数据库中直接调用Web Service,不需要通过前台调用
名称WebService::Simple::AWS - 使用 WebService::Simple 的 Amazon Web Service 的简单接口概要 use WebService::Simple::AWS;my $service = WebService::Simple::AWS->new( base_url => '...
java调用json参数的webservice 涉及技术: JAVA JSON WEBSERVICE
webservice示例 springmvc+maven+cxf发布webservice 博客地址 http://blog.csdn.net/joe_storm/article/details/78839150
WebService测试工具 免费webservice测试地址: http://www.webxml.com.cn/WebServices/TraditionalSimplifiedWebService.asmx?wsdl 免费webservice参考: ...
springboot+webservice搭建webservice服务端及使用java客户端两种方式进行调用