Web Service开发

日期:2014-07-31点击次数:9276

      Web Service开发比较流行的有Axis,Apache CXF,JDK,XFire四种方式 。
      Axis2和XFire 是并称为新一代webservice开发平台,他们都有以下共同特性:

支持一系列Web Service的新标准例如:JSR181、WSDL2.0、JAXB2、WS-Security等。
解释XMl用Stax,对性能有了质的提高。XFire采用Woodstox作为 Stax的实现。
容易上手,可以方便快速的从pojo发布服务。
都可以与spring结合。
灵活的Binding机制,包括默认的Acegis、xmlbeans、jaxb2、castor。
Axis1与XFire性能比较:
Axis1.3比XFire慢2-6倍。
Axis1.3比XFire相应时间慢2-5倍。
      XFire 与Axis2比较:
XFire是严格意义的pojo形式,而Axis2并不是。
XFire比Axis2简单。
      Axis与CXF比较:
CXF支持WS-Addressing,WS-Policy,WS-RM,WS-Security和WS-I Basic Porofile。Axis2早期版本不支持WS-Policy。
CXF可以很好的支持Spring。Axis2不能。
Axis2支持更广泛的数据并对,如XMLBeans、JIBX、JaxMe和JaxBRI和它自定义的数据绑定ADB。CXF只支持JAXB和Aegis。
Axis2支持更多语言,除了Java还支持C/C++。
Axis2开发方式类似一个小型的应用服务器,Axis2的开发包要以WAR的形式部署到Servlet容器中,通过这些容器可以对工作中的Web Service 进行很好的监控和管理。
Axis2的Web administrion模块可以让我们动态的配置Axis2一个新的服务,可以上载、激活、修改web服务的参数。管理UI也可以管理一个或者多个处于运行状态的服务。这种界面化的管理弊端在于运行时所修改的参数没办法保存起来,重启之所做的修改都会全部失效。
Axis2允许自己作为独立的应用发布Web Service 并提供了大量的功能和很好的模型,该模型通过本身的架构(modular architecture)不断添加新功能,比较繁琐。
CXF更加注重开发人员的工效(ergonomics)和嵌入能力(embeddability)。大多数配置通过API完成,替代了繁琐的XML配置。
CXF支持Spring2.0,CXF’s API可以和Spring的配置文件非常好的对应。
CXF强调代码优先的设计方式(code-first design),使用了简单的API,从现有应用开发服务变得方便。
      Jdk 与其他比较:
利用jdk开发Web Service 步骤比其他几种方式繁琐。



软件部   左顶