Java JAX-WS和JAX-RS webservice的区别和特点

来源:互联网 发布:定时器软件 编辑:程序博客网 时间:2024/06/07 17:13

Java,JAX-WS,JAX-RS,webservice,区别,特点

 

首先说明一下:jaxbjava xml binding,是jax-rs jax-ws底层使用的对象与xml之间转换的工具

其次是:JAX-WSJAX-RS

JAX-WS全称是JavaTM API forXML-Based WebServices

JAX-RS :全称是 JavaTM APIforRESTful Web Services

 

JAX-WS是针对WebService。而JAX-RS是针对RESTful HTTP Service

可以说这是两种风格的SOA架构风格:

前者以动词为中心,指定的是每次执行函数,大力支持的厂商如BEAIBMMS基本都是开发工具厂商,没有开发工具来做WebService简直不是人干的活,呵呵)

后者以名词为中心,每次执行的时候指的是资源,大力支持的厂商如Google,Yahoo,亚马孙等都是服务运营厂商,实在是REST简洁好用,又能满足绝大部分需求)。

 

JAX-WS是面向消息的,每次请求的时候指定了请求的方法。JAX-RS是面向资源的。后则将网络上的东西当做一种资源,每次请求都是对该资源进行操作,比如对资源的增删查改。

在网上看到这么一句话:JAVA中共有三种WebService规范,分别是JAXM&SAAJJAX-WSJAX-RPC)、JAX-RS。我暂时不清楚他们能不能叫做webservice服务规范,而且这个服务规范是什么意思?

 

JAX-WS规范是一组XML web servicesJAVA API,这样会不会好理解一点?规范和API什么关系啊。。。。为什么规范是java api (请原谅我这么咬文嚼字。。。)

我的理解就是他们只是集成在java平台里边的API,这个API是用来实现不同风格的JWS的。人们把这一套API叫做web服务规范。因为他们的设计目标不一样,前者JWS-WS为实现基于soap协议的Web Service提供的APISOAP协议比较强大。而后者JWS-RS是为基于REST设计风格的WebServcice提供的API

关于REST这么说,它是一种架构,而不是一种标准。目前我对他得理解还不够深刻,暂不做深述。

然后我们再结合一部分框架,就能够很轻松(至少框架的目的是这样)的实现Web Service

 

支持的框架:

支持JAX-WS服务规范的框架有:CXFAxisXfire。结合java语言均可可实现JAX-WS

支持JAX-RS服务规范的框架有:

1.CXF——XFireCeltix的合并

2.Jersey——Sun公司的JAX-RS参考实现。

3.RESTEasy——JBossJAX-RS项目。

4.Restlet——也许是最早的REST框架了,它JAX-RS之前就有了。

2 0
原创粉丝点击