真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

JAVA開(kāi)發(fā)中使用的幾種WebService框架有哪些

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)JAVA開(kāi)發(fā)中使用的幾種Web Service框架有哪些,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

十年專注成都網(wǎng)站制作,企業(yè)網(wǎng)站制作,個(gè)人網(wǎng)站制作服務(wù),為大家分享網(wǎng)站制作知識(shí)、方案,網(wǎng)站設(shè)計(jì)流程、步驟,成功服務(wù)上千家企業(yè)。為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁(yè)設(shè)計(jì)及定制高端網(wǎng)站建設(shè)服務(wù),專注于企業(yè)網(wǎng)站制作,高端網(wǎng)頁(yè)制作,對(duì)成都門簾等多個(gè)方面,擁有多年的網(wǎng)站設(shè)計(jì)經(jīng)驗(yàn)。

在講Web Service開(kāi)發(fā)服務(wù)時(shí),需要介紹一個(gè)目前開(kāi)發(fā)Web Service的幾個(gè)框架,分別為Axis,axis2,Xfire,CXF以及JWS(也就是前面所述的JAX-WS,這是Java6發(fā)布所提供的對(duì)Web Service服務(wù)的一種實(shí)現(xiàn)。)

前面幾項(xiàng)都為開(kāi)源項(xiàng)目,而其中又以axis2與cxf所最為常用,Axis與XFire已隨著技術(shù)不斷的更替慢慢落幕,而目前也只有axis2和cxf官方有更新,Axis與XFire都已不再更新。

下面就分別介紹下這幾個(gè)框架之間的區(qū)別,以便大家進(jìn)行更好的選擇:

XFire是與Axis2 并列的新一代WebService平臺(tái)。之所以并稱為新一代,因?yàn)樗?/p>

1、支持一系列Web Service的新標(biāo)準(zhǔn)--JSR181、WSDL2.0 、JAXB2、WS-Security等;

2、使用Stax解釋XML,性能有了質(zhì)的提高。XFire采用Woodstox 作Stax實(shí)現(xiàn);

3、容易上手,可以方便快速地從pojo發(fā)布服務(wù);

4、Spring的結(jié)合;

5、靈活的Binding機(jī)制,包括默認(rèn)的Aegis,xmlbeans,jaxb2,castor。

XFire與Axis1性能的比較

1、XFire比Axis1.3快2-6倍

2、XFire的響應(yīng)時(shí)間是Axis1.3的1/2到1/5

XFire與Axis2的比較

雖然XFire與Axis2都是新一代的WebService平臺(tái),但是Axis2的開(kāi)發(fā)者太急于推出1.0版本,所以1.0還不是一個(gè)穩(wěn)定的版本,它的開(kāi)發(fā)者宣稱1.1版本即將推出,希望1.1版本會(huì)是個(gè)穩(wěn)定的版本。

在XFire捐獻(xiàn)給apache后有人認(rèn)為Axis2將會(huì)滅亡。其實(shí)在很多人眼里,Axis2并不是pojo形式,Dan Diephouse證明了XFire比Axis更有市場(chǎng)

我也發(fā)現(xiàn)了有很多人開(kāi)始從Axis轉(zhuǎn)向XFire,包括我也在說(shuō)服身邊的人轉(zhuǎn)向利用XFire進(jìn)行WebService的開(kāi)發(fā),很典型的是我可以在幾分鐘之內(nèi)教會(huì)我的團(tuán)隊(duì)實(shí)用XFire來(lái)發(fā)布一個(gè)他自己的Web服務(wù)。

本人傾向于XFire確實(shí)比Axis2簡(jiǎn)單很多。

AXIS VS CXF

在SOA領(lǐng)域,我們認(rèn)為Web Service是SOA體系的構(gòu)建單元(building block)。

對(duì)于服務(wù)開(kāi)發(fā)人員來(lái)說(shuō),AXIS和CXF一定都不會(huì)陌生。這兩個(gè)產(chǎn)品都是Apache孵化器下面的Web Service開(kāi)源開(kāi)發(fā)工具。

本文發(fā)布時(shí)Axis的最新版本是1.4;CXF現(xiàn)在已經(jīng)到了3.0版本。

這兩個(gè)框架 都是從已有的開(kāi)源項(xiàng)目發(fā)展起來(lái)的

Axis2是從Axis1.x系列發(fā)展而來(lái)。而CXF則是XFire和Celtix項(xiàng)目的結(jié)合產(chǎn)品。Axis2是從底層全部重新實(shí)現(xiàn),使用了新的擴(kuò)展性更好模塊架構(gòu)。 CXF也重新的深化了XFire和Celtix這兩個(gè)開(kāi)發(fā)工具。

比較這兩個(gè)框架的Web Service開(kāi)發(fā)方法與比較它們的特性同樣重要。

從開(kāi)發(fā)者的角度,兩個(gè)框架的特性相當(dāng)?shù)牟煌?/p>

Axis2的開(kāi)發(fā)方式類似一個(gè)小型的應(yīng)用服務(wù)器,Axis2的開(kāi)發(fā)包要以WAR的形式部署到Servlet容器中,比如Tomcat,通過(guò)這些容器可以對(duì)工作中的Web Service進(jìn)行很好的監(jiān)控和管理。

Axis2的Web administrion模塊可以讓我們動(dòng)態(tài)的配置Axis2.一個(gè)新的服務(wù)可以上載,激活,使之失效,修改web服務(wù)的參數(shù)。

管理UI也可以管理一個(gè)或者多個(gè)處于運(yùn)行狀態(tài)的服務(wù)。這種界面化管理方式的一個(gè)弊端是所有在運(yùn)行時(shí)修改的參數(shù)沒(méi)有辦法保存,因?yàn)樵谥貑?dòng)之后,你所做的修改就會(huì)全部失效。

Axis2允許自己作為獨(dú)立的應(yīng)用來(lái)發(fā)布Web Service,并提供了大量的功能和一個(gè)很好的模型,這個(gè)模型可以通過(guò)它本身的架構(gòu)(modular architecture)不斷添加新的功能。

有些開(kāi)發(fā)人員認(rèn)為這種方式對(duì)于他們的需求太過(guò)于繁瑣,從而會(huì)更喜歡CXF

CXF更注重開(kāi)發(fā)人員的工效(ergonomics)和嵌入能力(embeddability)。

大多數(shù)都可以通過(guò)配置API來(lái)完成,替代了比較繁瑣的XML配置文件, Spring的集成性經(jīng)常的被提及,CXF支持Spring2.0和CXF's API和Spring的配置文件可以非常好的對(duì)應(yīng)。

CXF強(qiáng)調(diào)代碼優(yōu)先的設(shè)計(jì)方式(code-first design),使用了簡(jiǎn)單的API使得從現(xiàn)有的應(yīng)用開(kāi)發(fā)服務(wù)變得方便。

不過(guò)你選擇Axis2還是CXF,你都可以從開(kāi)源社區(qū)得到大量的幫助。

這兩個(gè)框架都有商業(yè)公司提供服務(wù),WSO2提供AXIS2的支持,Iona提供CXF的支持。這兩公司都有很活躍的開(kāi)發(fā)者社區(qū)。

下面分別介紹一個(gè)這幾種Web Service框架的基本概念

1、JWS是Java語(yǔ)言對(duì)WebService服務(wù)的一種實(shí)現(xiàn),用來(lái)開(kāi)發(fā)和發(fā)布服務(wù)。

而從服務(wù)本身的角度來(lái)看JWS服務(wù)是沒(méi)有語(yǔ)言界限的。但是Java語(yǔ)言為Java開(kāi)發(fā)者提供便捷發(fā)布和調(diào)用WebService服務(wù)的一種途徑。

2、Axis2是Apache下的一個(gè)重量級(jí)WebService框架,準(zhǔn)確說(shuō)它是一個(gè)Web Services / SOAP / WSDL 的引擎,是WebService框架的集大成者,它能不但能制作和發(fā)布WebService,而且可以生成Java和其他語(yǔ)言版WebService客戶端和服務(wù)端代碼。

這是它的優(yōu)勢(shì)所在。但是,這也不可避免的導(dǎo)致了Axis2的復(fù)雜性,使用過(guò)的開(kāi)發(fā)者都知道,它所依賴的包數(shù)量和大小都是很驚人的,打包部署發(fā)布都比較麻煩,不能很好的與現(xiàn)有應(yīng)用整合為一體。

但是如果你要開(kāi)發(fā)Java之外別的語(yǔ)言客戶端,Axis2提供的豐富工具將是你不二的選擇。

3、XFire是一個(gè)高性能的WebService框架,在Java6之前,它的知名度甚至超過(guò)了Apache的Axis2,XFire的優(yōu)點(diǎn)是開(kāi)發(fā)方便,與現(xiàn)有的Web整合很好,可以融為一體,并且開(kāi)發(fā)也很方便

但是對(duì)Java之外的語(yǔ)言,沒(méi)有提供相關(guān)的代碼工具。XFire后來(lái)被Apache收購(gòu)了,原因是它太優(yōu)秀了,收購(gòu)后,隨著Java6 JWS的興起,開(kāi)源的WebService引擎已經(jīng)不再被看好,漸漸的都敗落了。

4、CXF是Apache旗下一個(gè)重磅的SOA簡(jiǎn)易框架,它實(shí)現(xiàn)了ESB(企業(yè)服務(wù)總線)。

CXF來(lái)自于XFire項(xiàng)目,經(jīng)過(guò)改造后形成的,就像目前的Struts2來(lái)自WebWork一樣

可以看出XFire的命運(yùn)會(huì)和WebWork的命運(yùn)一樣,最終會(huì)淡出人們的視線。CXF不但是一個(gè)優(yōu)秀的Web Services / SOAP / WSDL 引擎,也是一個(gè)不錯(cuò)的ESB總線,為SOA的實(shí)施提供了一種選擇方案,當(dāng)然他不是最好的,它僅僅實(shí)現(xiàn)了SOA架構(gòu)的一部分。

注:對(duì)于Axis2與CXF之間的關(guān)系,一個(gè)是Axis2出現(xiàn)的時(shí)間較早,而CXF的追趕速度快。

如何抉擇:

1、如果應(yīng)用程序需要多語(yǔ)言的支持,Axis2 應(yīng)當(dāng)是首選了;

2、如果應(yīng)用程序是遵循 Spring 哲學(xué)路線的話,Apache CXF 是一種更好的選擇,特別對(duì)嵌入式的 Web Services 來(lái)說(shuō);

3、如果應(yīng)用程序沒(méi)有新的特性需要的話,就仍是用原來(lái)項(xiàng)目所用的框架,比如 Axis1,XFire,Celtrix或 BEA 等等廠家自己的 Web Services 實(shí)現(xiàn),就別勞民傷財(cái)了。

最后,我的建議是:如果你需要多語(yǔ)言的支持,你應(yīng)該選擇AXIS2。

如果你需要把你的實(shí)現(xiàn)側(cè)重JAVA并希望和Spring集成,CXF就是更好的選擇,特別是把你的Web Service嵌入其他的程序中。

如果你覺(jué)得這兩個(gè)框架的新特性對(duì)于你并沒(méi)有太大的用處,你會(huì)覺(jué)得Axis1也是不錯(cuò)的選擇,你應(yīng)該繼續(xù)使用它直到你有充分的理由去更換它。

上述就是小編為大家分享的JAVA開(kāi)發(fā)中使用的幾種Web Service框架有哪些了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


網(wǎng)頁(yè)題目:JAVA開(kāi)發(fā)中使用的幾種WebService框架有哪些
網(wǎng)站網(wǎng)址:http://weahome.cn/article/jgeedh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部