Web Service 介绍
概念
1.webservice是一个跨平台跨语言的远程调用技术
2.webservice采用的是SOAP协议,SOAP协议是基于http的应用层协议,soap协议传输的是xml数据
3. 然后对外提供了wsdl说明书,用来描述服务端的接口,接口方法,方法参数,是一个xml文件
WebServices 是什么
- Web Services 是应用程序组件
- Web Services 使用开放协议进行通信
- Web Services 是独立的(self-contained)并可自我描述
- Web Services 可通过使用UDDI来发现
- Web Services 可被其他应用程序使用
- XML 是 Web Services 的基础
Web Service的三要素:SOAP、WSDL、UDDI
可重复使用的应用程序组件
有一些功能是不同的应用程序常常会用到的。那么为什么要周而复始地开发它们呢?
Web services 可以把应用程序组件作为服务来提供,比如汇率转换、天气预报或者甚至是语言翻译等等。
比较理想的情况是,每种应用程序组件只有一个最优秀的版本,这样任何人都可以在其应用程序中使用它。
连接现有的软件
通过为不同的应用程序提供一种链接其数据的途径,Web services有助于解决协同工作的问题。
通过使用 Web services,您可以在不同的应用程序与平台之间来交换数据。
java 开发WebServices的几种方式
- Axis2方式
Axis是apache下一个开源的webservice开发组件,出现的算是比较早了,也比较成熟。这里主要介绍Axis+eclipse开发webservice,当然不用eclipse也可以开发和发布webservice,只是用eclipse会比较方便。 - Apche CXF方式
CXF开发webservice也是比较方便和简单的,它和spring的集成可以说是非常地好。 - JDK开发webservice方式
优缺点:
-
优点:
- 客户端不同的编程语言也可以使用webservice提供的接口来进行两端之间的对象传递
- 跨平台跨语言等等,学习成本低,因为SOAP协议是一个标准,是基于HTTP协议的,HTTP协议也是一个标准,然后SOAP协议传输是xml数据,xml也是一个标准
-
缺点:
- 因为是基于SOAP的协议,因为是涉及xml对象的转换,所以传输是比较慢的
- 如果需要快的,就采用TCP/IP的访问,然后再到http协议
- 在线支付是传输的数据不太,而且需要快,就采用http协议