使用CXF构建webservice和rest应用

1. axis , xfire, cxf ? who is the best?

 

 

 从写第一个websevice 应用到现在有2年多的时间了,一开始就是用axis,之后是xfire,现在需要掌握下restful了,感觉虽然框架在变,但是万变不离七宗,你想明白 了,那学习心得东西就不费力了!我们的项目里使用cxf框架 开发了restful应用接口,暴漏给第三方调用!!

 

 

为啥选择restful 暴漏服务给第三方使用?下面是我自己的观点:

 

1.webservice  :似乎webservice 是SOA的银弹,可是它是基于SOAP协议的,soap协议复杂,哪个程序员自己写过wsdl文件,哪个不是利用开源框架自动生成的,效率是webservice的软肋,soap写的的组装,拆分,以及数据路由

 

2.ejb : ejb2.0 也是一个笨重的框架,要是给对方暴漏ejb 服务,首先需要服务方使用ejb容器,比如jboss,websphere, 光有jre是玩不转ejb的,还有ejb可不像webservice 穿透性那么好,webservice 只需要有80端口就OK了,而ejb 的调用服务端可不只给客户端暴漏那个lookup的端口,尤其在电信,金融等行业,防火墙重重保护下!我们就遇到过这方面的问题。还有就是 ejb的服务端升级,还需要将jar同步到客户端,哎!悲剧了!调用方也得加班陪着服务方一起升级了

 

3.rmi java远程方法调用,很好,只要有jre就OK,可是和ejb一样,不是跨平台的,客户端要是C 就玩不转了,不像人家webservice协议 ,跨平台!

 

于是restful 横空出世,简单,易用,跨平台,阿里巴巴对外的API就是restful的

 

什么事restful 呢?上网Google下 你就明白了!! 我的理解就是对http协议的简化版!!

 

 

目前我知道的对restful支持最好的就是cxf框架了,几个注解就能开发一个restful应用了!!下面我们开始cxf之旅

 

1.使用cxf内置jetty 开发webservice应用  (附件hw.rar中)

 

 

 

2.使用cxf 和sping集成开发 webservice 应用 (附件cxfdemo.rar中)

 

 

3.使用cxf 开发restful应用!(附件cxfdemo.rar中)

 

 

 

参考:

 

rest webservice 和 soap webservice 的比较

http://www.360doc.com/content/09/0918/23/11553_6152605.shtml

 

 restful 很好的例子
 http://borissun.iteye.com/blog/765869

 

记录一下,方面以后查看

原文带有附件,地址为:http://8366.iteye.com/blog/952887

你可能感兴趣的:(webservice)