当前位置:   article > 正文

WebService是什么?他究竟和WebSocket有什么关系?_webservice和websocket的区别

webservice和websocket的区别

一、WebService到底是什么?

一言以蔽之:WebService是一种跨编程语言和跨操作系统的远程调用技术。

其以 HTTP 协议为基础,通过 XML 进行客户端和服务器端通信的框架 / 组件。

两个关键点 :

1.服务端提供的功能 , 通过 xml 描述

2.第一步中的描述的功能 , 嵌入到 HTTP 协议中 , 使得能通过 HTTP 协议进行通信【所谓的 SOAP

二、他和WebSocket 的区别是什么?

要注意的是,有些人会和WebSocket 搞混淆。WebSocket 是HTML5支持的新特性,适用于即时通信,将以前C/S架构上的Socket通信搬到B/S上,但是有跟Socket有差别,以往的Web即时通信通过Ajax的轮询实现(很low很low),现在WebSocket的诞生将改变这一解决方案。

WebService则是服务器端的技术,远程访问数据(看上面)。

三、为什么要用Web service,他的好处是?

web service能解决:

跨平台调用
跨语言调用
远程调用
四、什么时候使用web Service?

  1. 同一家公司的新旧应用之间

  2. 不同公司的应用之间

  3. 一些提供数据的内容聚合应用:天气预报、股票行情
    五、怎么开发,是从零开始开发web Service吗?

市面上挺多框架可以选择,比如CXF(Celtix + XFire),是apache的用于开发webservice服务器端和客户端的框架。axis,等。

六、WebService开发

WebService开发可以分为服务器端开发和客户端开发两个方面。(这里所说的客户端和服务端并不是传统的用户浏览器就是客户端,java开发这方是服务端。而是我们java开发(客户端)调用别人写好的的WebService(服务端),两者都是在开发的角度。就相当于我们使用三大框架开发java web是开发,绝大部分的人只是去用这三大框架的水平。人家开发三大框架也是开发,但是能力层次上不同)。

1、服务端开发

把公司内部系统的业务方法发布成WebService服务,供远程合作单位和个人调用。

2、客户端开发

调用别人发布的WebService服务,大多数人从事的开发都属于这个方面,例如,调用天气预报WebService服务。(下面会给出实例)

3、WebService 的工作调用原理理解:

对客户端而言,我们给这各类WebService客户端API传递wsdl文件的url地址,这些API就会创建出底层的代理类,我调用 这些代理,就可以访问到webservice服务。代理类把客户端的方法调用变成soap格式的请求数据再通过HTTP协议发出去,并把接收到的soap 数据变成返回值返回。对服务端而言,各类WebService框架的本质就是一个大大的Servlet,当远程调用客户端给它通过http协议发送过来 soap格式的请求数据时,它分析这个数据,就知道要调用哪个java类的哪个方法,于是去查找或创建这个对象,并调用其方法,再把方法返回的结果包装成 soap格式的数据,通过http响应消息回给客户端。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/524602
推荐阅读
相关标签
  

闽ICP备14008679号