socket 、webservices、Json的区别
2015-10-02 11:33
351 查看
今天上网浏览了一篇日志,这里仅仅作为收藏,供个人知识积累,特此声明
面试的时候,别人问到过这种问题,仅作个人积累
socket是java针对 tcp/ip 的一个实现
webservice是基于http的分布式系统的接口实现方式,http是在tcp/ip基础上搭建起来的超文本传输协议。
socket和webservice都有跨平台的优点,但是socket偏底层,效率高,但是开发成本大。
webservice效率低,但是开发成本低廉。
ws是基于http协议的(当然JAX-WS貌似认为ftp之类的也可以?)以xml为载体的通信方式。
ws的好处是第一是直观(xml吗!),第二是标准(貌似ms从2002年就开始力推了),当然也方便了异构系统的交互。如果你想提供对外的业务访问的接口,可能需要浏览器,各种语言的客户端等各种异构系统访问,ws是首选。简单的例子比如你提供个天气预报服务。java里面首选cxf。
如果说http和ftp是语言,socket顶多算发音。基于socket的编程为你提供了tcp/ip或者udp的通信的实现;如果你做标准的服务器,比如下载服务器;或者语音通信的程序,或者视频,文件传输……这些只能用socket。当然单纯用socket写会很烦的,你要处理各种东西,协议的编解码等等,所以这种情况下推荐mina,netty或者grizzly。
json是个很不错的玩意,本质来说它就是javascript片段描述的对象。说到这里各位聪明的弟弟妹妹们肯定明白,它应该对浏览器很有用。是的!如果你要做一个ajax的功能的话,json是最简单有效而且性能灰藏好!比如mtime的很多异步功能都是用json方式传递的。json好在没有什么门槛,也可以用于异构系统交互,不过如果异构系统不仅仅是浏览器,那你还是选择ws吧。jsonlib等库都可以直接把一个对象转为json字符串,struts2也提供了json插件,2.1.8以后是内置插件了。
面试的时候,别人问到过这种问题,仅作个人积累
socket是java针对 tcp/ip 的一个实现
webservice是基于http的分布式系统的接口实现方式,http是在tcp/ip基础上搭建起来的超文本传输协议。
socket和webservice都有跨平台的优点,但是socket偏底层,效率高,但是开发成本大。
webservice效率低,但是开发成本低廉。
ws是基于http协议的(当然JAX-WS貌似认为ftp之类的也可以?)以xml为载体的通信方式。
ws的好处是第一是直观(xml吗!),第二是标准(貌似ms从2002年就开始力推了),当然也方便了异构系统的交互。如果你想提供对外的业务访问的接口,可能需要浏览器,各种语言的客户端等各种异构系统访问,ws是首选。简单的例子比如你提供个天气预报服务。java里面首选cxf。
如果说http和ftp是语言,socket顶多算发音。基于socket的编程为你提供了tcp/ip或者udp的通信的实现;如果你做标准的服务器,比如下载服务器;或者语音通信的程序,或者视频,文件传输……这些只能用socket。当然单纯用socket写会很烦的,你要处理各种东西,协议的编解码等等,所以这种情况下推荐mina,netty或者grizzly。
json是个很不错的玩意,本质来说它就是javascript片段描述的对象。说到这里各位聪明的弟弟妹妹们肯定明白,它应该对浏览器很有用。是的!如果你要做一个ajax的功能的话,json是最简单有效而且性能灰藏好!比如mtime的很多异步功能都是用json方式传递的。json好在没有什么门槛,也可以用于异构系统交互,不过如果异构系统不仅仅是浏览器,那你还是选择ws吧。jsonlib等库都可以直接把一个对象转为json字符串,struts2也提供了json插件,2.1.8以后是内置插件了。
相关文章推荐
- 如何将js动态的写入到某个div中
- js事件委托
- json解析
- js 学习
- JavaScript斐波纳契数列非递归算法
- JavaScript权威指南学习之第3章 类型、值和变量
- JavaScript权威指南学习之第2章 词法结构
- JavaScript之对象(一)
- js.String
- js.Date
- js Math
- JSP如何获取客户端真实IP地址
- JSP文件下载功能的4种方法
- Clipboard.js 无需Flash的JavaScript复制粘贴库
- 使用 JavaScript 进行函数式编程 (一) 翻译
- 与正则相关的一切 (示例)JS Date 转换日期格式
- json 解析 ---Gps坐标转百度地图坐标
- C#解析xml/json/excel
- JS对象入门
- 网页常用JavaScript代码