你的位置:首页 > Java教程

[Java教程]JWS ,JAX


与 WebServices 相关的 J2EE 技术称为 JWS(Java WebServices),其中含有 JAX-WS、JAX-RS、JAXB、JAXR、SAAJ、StAX 等技术
支持 SOAP 的是 JAX-WS,即 JSR 224,http://jcp.org/en/jsr/detail?id=224 
支持 REST 的是 JAX-RS,即 JSR 311,http://jcp.org/en/jsr/detail?id=311

soap rest 区别 。。转载: http://hi.baidu.com/itaolei/item/dd8e5f0fa6f1663bf3eafc99

    本文转载自他人的博客,ArcGIS Server 推出了 对 SOAP 和 REST两种接口(用接口类型也许并不准确)类型的支持,本文非常清晰的比较了SOAP和Rest的区别联系!

REST似乎在一夜间兴起了,这可能引起一些争议,反对者可以说REST是WEB诞生之始甚而是HTTP出现之日就相伴而生的原则。但是毋庸置疑的事实是,在Google和Yahoo等网络巨头发布的相同功能的Web Service API中,REST无疑受到更多的青睐,因此是不是可以这样说:RPC在一夜之间衰落了?

在一篇作业的小文章里讨论整套RPC的原理,无疑太过庞大了,况且RPC在Web Service领域的应用也无过-RPC以及由此延伸的SOAP而已。在原理上唯一重要的,是传统程序的函数调用和返回在RPC中被请求和应答代替了而已。既然如此,在讨论REST之前先阐述SOAP,可能是合乎逻辑的顺序。

什么是SOAP?

SOAP (Simple Object Access Protocol) 顾名思义,是一个严格定义的信息交换协议,用于在Web Service中把远程调用和返回封装成机器可读的格式化数据。事实上SOAP数据使用

什么是REST?

REST (REpresentational State Transfort) 形式上应该表述为客户端通过申请资源来实现状态的转换,在这个角度系统可以看成一台虚拟的状态机。抛开R. T. Fielding博士论文里晦涩的理论不说,REST应该满足这样的特点:

 

1)客户端和服务器结构;

2)连接协议具有无状态性;

3)能够利用Cache机制增进性能;

4)层次化的系统;

5)按需代码。

说到底,REST只是一种架构风格,而不是协议或标准。但这种新的风格(也许已经历史悠久?)对现有的以SOAP为代表的Web Service造成的冲击也是革命性的,因为它面向资源,甚至连服务也抽象成资源,因为它和HTTP紧密结合,因为它服务器无状态。

REST与SOAP的区别

因为SOAP并不假定传输数据的下层协议,因此必须设计为能在各种协议上运行。即使绝大多数SOAP是运行在HTTP上,使用URI标识服务,SOAP也仅仅使用POST方法发送请求,用一个唯一的URI标识服务的入口。

举一个图书馆在线查询管理系统为例,服务提供者必须为每一本书提供一个内部标识,然后可能定义一个listBooks操作来返回一系列图书,一个getBook操作来返回指定的图书,一个createBook操作来向数据库加入新增的图书,一个deleteBook操作来删除作废的图书,每个操作都有各自的参数,尤其是用内部标识来标识操作的图书。这种设计被诟病之处,在于deleteBook操作也要用POST方法来发送,而其实HTTP协议有更和逻辑的DELETE方法可用。REST正是这样设计的,REST为每一个资源(此处是图书)指定一个唯一的URI,而用HTTP的4种方法GET、POST、PUT、DELETE直观地表示获取、创建、更新和删除图书。同时图书集合也是和单本的图书不同的资源,如果用/books来代表图书列表,/books/ID来代表标识为ID的图书,那么对/books的GET操作就代表返回整个图书列表,对/books/ID的DELETE操作代表删除指定的图书,等等。