一、什麼是cxf
有很多人認爲cxf就是webservice,其實cxf只是發佈調用webservice的工具而已
Apache CXF = Celtix + Xfire,開始叫 Apache CeltiXfire,後來更名爲 Apache CXF 了,以下簡稱爲 CXF。Apache CXF 是一個開源的 web Services 框架,CXF 幫助您構建和開發 web Services ,它支持多種協議,比如:SOAP1.1,1,2、XML/HTTP、RESTful 或者 CORBA。
RESTful:一種風格而不是一個協議。它理念是網絡上的所有事物都被抽象爲資源,每個資源對應一個唯一的資源標識符(這個可以去網上查,資料很多,現在也特別的流行)。
CORBA(Common Object Request Broker Architecture公共對象請求代理體系結構,早期語言使用的WS。C,c++,C#)
Cxf是基於SOA總線結構,依靠spring完成模塊的集成,實現SOA方式。
靈活的部署:可以運行在Tomcat,Jboss,Jetty(內置),weblogic上面。
(當然,學習某一個新的框架最好的辦法就是去它的官方文檔看http://cxf.apache.org/docs/index.html,這樣學起來是最快的)
二、功能特性:
CXF 包含了大量的功能特性,但是主要集中在以下幾個方面:
1. 支持 Web Services 標準:CXF 支持多種 Web Services 標準,包含 SOAP、Basic Profile、WS-Addressing、WS-Policy、WS-ReliableMessaging 和 WS-Security。
2. Frontends:CXF 支持多種“Frontend”編程模型,CXF 實現了 JAX-WS API (遵循 JAX-WS 2.0 TCK 版本),它也包含一個“simple frontend”允許客戶端和 EndPoint 的創建,而不需要 Annotation 註解。CXF 既支持 WSDL 優先開發,也支持從 Java 的代碼優先開發模式。
3. 容易使用: CXF 設計得更加直觀與容易使用。有大量簡單的 API 用來快速地構建代碼優先的 Services,各種 Maven 的插件也使集成更加容易,支持 JAX-WS API ,支持 Spring 2.0 更加簡化的 XML 配置方式,等等。
4. 支持二進制和遺留協議:CXF 的設計是一種可插撥的架構,既可以支持 XML ,也可以支持非 XML 的類型綁定,比如:JSON 和 CORBA。
三、Cxf的下載及安裝
下載地址:
http://cxf.apache.org/download.html
安裝:
與tomcat相似,解壓,然後配置系統環境變量
系統環境變量:CXF_HOME
系統環境變量:path 中追加bin目錄
測試:
3 cxf的應用:
使用cxf發佈jax-ws規範的Webservice
cxf發佈jax-rs規範的Webservice
Spring集成cxf(官方推薦使用方式)
4、總結:
接下來的博客會介紹如何spring集成cxf