下面分别介绍一个这几种Web Service框架的基本概念

1、JWS是Java语言对WebService服务的一种实现,用来开发和发布服务。而从服务本身的角度来看JWS服务是没有语言界限的。但是Java语言为Java开发者提供便捷发布和调用WebService服务的一种途径。

2、Axis2是Apache下的一个重量级WebService框架,准确说它是一个Web Services / SOAP / WSDL 的引擎,是WebService框架的集大成者,它能不但能制作和发布WebService,而且可以生成Java和其他语言版WebService客户端和服务端代码。这是它的优势所在。但是,这也不可避免的导致了Axis2的复杂性,使用过的开发者都知道,它所依赖的包数量和大小都是很惊人的,打包部署发布都比较麻烦,不能很好的与现有应用整合为一体。但是如果你要开发Java之外别的语言客户端,Axis2提供的丰富工具将是你不二的选择。

3、XFire是一个高性能的WebService框架,在Java6之前,它的知名度甚至超过了Apache的Axis2,XFire的优点是开发方便,与现有的Web整合很好,可以融为一体,并且开发也很方便。但是对Java之外的语言,没有提供相关的代码工具。XFire后来被Apache收购了,原因是它太优秀了,收购后,随着Java6 JWS的兴起,开源的WebService引擎已经不再被看好,渐渐的都败落了。

4、CXF是Apache旗下一个重磅的SOA简易框架,它实现了ESB(企业服务总线)。CXF来自于XFire项目,经过改造后形成的,就像目前的Struts2来自WebWork一样。可以看出XFire的命运会和WebWork的命运一样,最终会淡出人们的视线。CXF不但是一个优秀的Web Services / SOAP / WSDL 引擎,也是一个不错的ESB总线,为SOA的实施提供了一种选择方案,当然他不是最好的,它仅仅实现了SOA架构的一部分。

注:对于Axis2与CXF之间的关系,一个是Axis2出现的时间较早,而CXF的追赶速度快。

如何抉择:

1、如果应用程序需要多语言的支持,Axis2 应当是首选了;

2、如果应用程序是遵循 Spring 哲学路线的话,Apache CXF 是一种更好的选择,特别对嵌入式的 Web Services 来说;

3、如果应用程序没有新的特性需要的话,就仍是用原来项目所用的框架,比如 Axis1,XFire,Celtrix或 BEA 等等厂家自己的 Web Services 实现,就别劳民伤财了。

最后,我的建议是:如果你需要多语言的支持,你应该选择AXIS2。如果你需要把你的实现侧重JAVA并希望和Spring集成,CXF就是更好的选择,特别是把你的Web Service嵌入其他的程序中。如果你觉得这两个框架的新特性对于你并没有太大的用处,你会觉得Axis1也是不错的选择,你应该继续使用它直到你有充分的理由去更换它。

webservice框架 java_JAVA开发Web Service几种框架介绍相关推荐

  1. JAVA开发Web Service几种框架介绍

    在讲Web Service开发服务时,需要介绍一个目前开发Web Service的几个框架,分别为Axis,axis2,Xfire,CXF以及JWS(也就是前面所述的JAX-WS,这是Java6发布所 ...

  2. 使用 python 开发 Web Service

    使用 python 开发 Web Service Python 是一种强大的面向对象脚本语言,用 python 开发应用程序往往十分快捷,非常适用于开发时间要求苛刻的原型产品.使用 python 开发 ...

  3. 使用Axis开发Web Service程序

    今天是感恩节,差点又要在公司加班了.好在Web Service程序并不是特别难搞,下午终于在eclipse下调通过了,正确产生了服务器端和客户端的Java代码,apache的东西的确很不错. 说道We ...

  4. 基于Tomcat5.0和Axis2开发Web Service代码详解

    本文将详细介绍HelloWorld中使用的server和client端代码.阅读之前,你应该首先了解SOAP1.1协议.<?xml:namespace prefix = o ns = " ...

  5. Java开发Web Service的简介

    随着异构系统互联需求的不断增加,Web Service的重要性也日益彰显出来.凭借Web Service,我们可以实现基于不同程序语言开发的项目之间的互联互通,Web Service也是面向服务的架构 ...

  6. [Axis2与Eclipse整合开发Web Service系列之二] Top-Down方式,通过WSDL逆向生成服务端(续)

    前言 本篇是承接上一篇: [Axis2与Eclipse整合开发Web Service系列之二] Top-Down方式,通过WSDL逆向生成服务端 在上一篇粗略地介绍了如何使用Top-Down的方式创建 ...

  7. MyEclipse下开发Web Service(转)

    http://hi.baidu.com/banseon/blog/item/6cf5e2133e0535005baf53d2.html 本文介绍了使用MyEclipse Web Service来迅速开 ...

  8. [图解教程]Axis2与Eclipse整合开发Web Service之二:WSDL逆向生成服务端

    [图解教程]Axis2与Eclipse整合开发Web Service之二:WSDL逆向生成服务端 一般开发Web Service,是选写服务端,再根据生成的WSDL文件生成客户端.看过一本SOA的书中 ...

  9. Java开发web的几种开发模式

    Java开发web的几种开发模式 Java Web开发方案有多种可供选择,这里列举一些经典的开发模式进行横向比较,为Java Web的开发模式选择提供参考.除此之外还有好多方案(如Tapestry和W ...

  10. 基于Tomcat5.0和Axis2开发Web Service应用实例

    本文将介绍如何使用Tomcat5.0和Apache Axis2开发.部署及测试一个简单的Web Service应用.<?xml:namespace prefix = o ns = "u ...

最新文章

  1. C++游戏开发需要阅读的书籍
  2. oracle 最近的sql语句,oracle最近执行的sql语句
  3. 淘宝商品数据库设计的一些经验
  4. 前端学习(2734):重读vue电商网站44之使用 echarts
  5. 使用Log4j为项目配置日志输出应用详细总结及示例演示.
  6. .NET采集数据,放入数据库总结
  7. 部署大数据有哪些优势
  8. 华三 h3c DHCP
  9. Windows Phone开发(12):认识一下独具个性的磁贴
  10. CREO:CREO软件的简介、安装(七大步骤)、学习路线大全(CREO软件各模块界面解释—菜单栏快速栏工作区、草绘/零件/工程图/装配设计讲解)、案例应用(几十个案例)之详细攻略
  11. linux内核旋转屏幕,全志A33屏幕旋转(Android)
  12. 制作透明背景图片,按钮
  13. “佩奇”刷爆朋友圈 “野猪”占领美术馆空间
  14. CRAFT:Character region awareness for text detection 论文阅读
  15. 微信小程序background-img问题
  16. 用python定时自动发微博_Python脚本实现自动发带图的微博
  17. 国际物联网展亮相中国苏州 成功促进产业链交流与合作
  18. 《The One !团队》:BETA Scrum metting2
  19. 学会这8个诀窍,让你的工作事半功倍
  20. 一起学时序分析之建立/保持时间裕量

热门文章

  1. matlab遗传算法求解车辆路径问题(一)
  2. 新梦想干货——软件测试中的43个功能测试点(下)
  3. 最简单的省市区三级联动
  4. Redhat7 安装 yum
  5. uniapp开发小程序-获取支付宝小程序用户手机号功能
  6. sql vb xml 换行_VB中文本框换行--------急!!!
  7. 教你如何制作网页木马
  8. 使用38译码器扩展单片机接口
  9. 基于单片机的c语言交通控制器设计论文初稿,基于AT89C51单片机的交通灯控制系统设计答辩.ppt...
  10. 数据挖掘算法之Apriori算法应用实例