標籤:servlet tail nsa 本質 security 高效能 com apach beans
一、WebService的開發手段
目前有關webService的開發手段有2種
1、JDK開發(jdk必須是1.6及以上版本,因為jdk是在1.6版本中引入並支援webservice開發的);
2、採用webservice架構開發,目前流行的webservice架構有已知的有如下幾種:Apache Axis1、Apache Axis2、Codehaus XFire(xfire方式)、Apache CXF,比較常用的是apache cxf方式。
二,WebService開發架構介紹
(此處是摘錄別人的一段話,全文請看http://blog.csdn.net/thunder4393/article/details/5787121)
2.1 Apache Axis1
Axis本質上就是一個SOAP引擎(Apache Axis is an implementation of the SOAP),提供建立伺服器端、用戶端和網關SOAP操作的基本架構。但Axis並不完全是一個SOAP引擎,它還包括:
l 是一個獨立的SOAP伺服器。
l 是一個嵌入Servlet引擎(例如Tomcat)的伺服器。
l 支援WSDL。
l 提供轉化WSDL為Java類的工具。
l 提供例子程式。
l 提供TCP/IP資料包監視工具。
2.2 Apache Axis2
Apache Axis2相比Apache Axis1更加有效、更加模組化、更加面向xml,支援容易外掛程式模組擴充新功能和特性,例如安全和可靠。Apache Axis2是基於Apache AXIOM,它是一個高效能、pull-based XML物件模型。Apache Axis2的關鍵特性:
l 解析xml更快。採用自己的物件模型和StAX (Streaming API for XML)。
l 更低的記憶體佔用。
l 支援熱部署。新服務加入到系統,無需重啟服務。
l 支援非同步 webservice、
l MEP支援,靈活支援在WSDL 2.0定義的Message Exchange Patterns (MEPs)
l 更加靈活。引擎給開發人員提供了充足的自由度可擴充客戶頭資訊處理、系統管理、
l 更加穩定性。
l 傳輸架構不依賴於具體協議。為整合和傳輸協議(SMTP, FTP, message-oriented middleware, etc)有一個簡單和抽象,引擎核心是完全獨立於具體的傳輸協議。
l 支援WSDL。支援WSDL1.1、WSDL2.0。
l 方便整合其他組件(Add-ons)。幾個web services已經被整合,包括:WSS4J for security (Apache Rampart), Sandesha for reliable messaging, Kandula which is an encapsulation of WS-Coordination, WS-AtomicTransaction and WS-BusinessActivity.
l 良好的擴充性。
2.3 Codehaus XFire
XFire核心是一個輕量的基於STAX訊息處理模型,用來與SOAP訊息互動,它支援不同類型的綁定機制、容器和傳輸協議。
支援webservice標準- SOAP, WSDL, WS-I Basic Profile, WS-Addressing, WS-Security, etc.
l 高效能SOAP STACK
l 可插拔綁定POJOs, XMLBeans, JAXB 1.1, JAXB 2.0, and Castor support
l 通過Java1.5 和1.4(Commons attributes JSR 181 syntax)使用JSR 181 API佈建服務
l 支援多中傳輸協議- HTTP, JMS, XMPP, In-JVM, etc.
l 可嵌入的和直觀的API
l 支援Spring, Pico, Plexus, and Loom
l 支援JBI
l 用戶端和服務端stub代碼產生
l 支援JAX-WS early access
2.4 Apache CXF
Apache CXF是一個開源服務架構。CXF可用前端編程APIs開發服務,比如:JAX-WS and JAX-RS,主要特性包括:
l 支援Web services標準。包括:SOAP、the WSI Basic Profile、WSDL、WS-Addressing、WS-Policy、WS-ReliableMessaging、WS-Security、WS-SecureConversation 和WS-SecurityPolicy.
l 支援不同類型前端開發模型。CXF實現了JAX-WS APIs,支援JAX-RS開發。
l 容易使用。CXF設計的簡潔和直觀,具有簡潔APIs迅速的構建基於代碼的服務,Maven外掛程式使得工具整合更加容易、JAX-WS API支援、Spring 2.x XML使得配置更加容易。
l 支援二進位和遺留協議。CXF被設計為可插拔的架構,在不同的傳輸協議結合下,不僅支援XML,也支援非XML類型綁定,例如:JSON和CORBA。
幾種流行Webservice架構效能對比http://blog.csdn.net/thunder4393/article/details/5787121
WebService的開發手段