Java WebService接口生成和調(diào)用-圖文詳解

Java WebService接口生成和調(diào)用-圖文詳解

天津卓眾教育      2022-05-01 00:07:01     42

Java WebService接口生成和調(diào)用-圖文詳解,Java webservice簡(jiǎn)介:WebService技術(shù),能使得運(yùn)行在不同機(jī)器上的不同應(yīng)用無(wú)須借助附加的、專(zhuān)門(mén)的第三方軟件或硬件,就可相互交換

課程價(jià)格 請(qǐng)咨詢(xún)

上課時(shí)段: 授課校區(qū):

詳細(xì)介紹

Java webservice簡(jiǎn)介:

WebService技術(shù),能使得運(yùn)行在不同機(jī)器上的不同應(yīng)用無(wú)須借助附加的、專(zhuān)門(mén)的第三方軟件或硬件,就可相互交換數(shù)據(jù)或集成。依據(jù)WebService規(guī)范實(shí)施的應(yīng)用之間,無(wú)論它們所使用的語(yǔ)言、平臺(tái)或內(nèi)部協(xié)議是什么,都可以相互交換數(shù)據(jù)。WebService是自描述、自包含的可用網(wǎng)絡(luò)模塊,可以執(zhí)行具體的業(yè)務(wù)功能。WebService也很容易部署,因?yàn)樗鼈兓谝恍┏R?guī)的產(chǎn)業(yè)標(biāo)準(zhǔn)以及已有的一些技術(shù),諸如標(biāo)準(zhǔn)通用標(biāo)記語(yǔ)言下的子集XML、HTTP。WebService減少了應(yīng)用接口的花費(fèi)。WebService為整個(gè)企業(yè)甚至多個(gè)組織之間的業(yè)務(wù)流程的集成提供了一個(gè)通用機(jī)制

一、Java WebService生成

1.在eclipse或myclipse新建一個(gè)Web項(xiàng)目,并新建一個(gè)class類(lèi),用于發(fā)布;

2.編寫(xiě)供客戶(hù)端調(diào)用的方法,即編譯方法代碼;

示例:

importjavax.jws.WebMethod;importjavax.jws.WebService;importjavax.xml.ws.Endpoint;@WebServicepublicclassJwsServiceHello{publicStringgetValue(Stringname){return"歡迎你!"+name;}@WebMethod(exclude=true)publicStringgetHello(Stringname){return"你好!"+name;}publicstaticStringgetString(Stringname){return"再見(jiàn)!"+name;}//通過(guò)EndPoint(端點(diǎn)服務(wù))發(fā)布一個(gè)WebServicepublicstaticvoidmain(String[]args){Endpoint.publish("http://192.168.1.105:8080/Service/ServiceHello",newJwsServiceHello());System.out.println("發(fā)布成功!");//發(fā)布成功后在瀏覽器輸入http://192.168.1.105:8080/Service/ServiceHello?wsdl}}

4.進(jìn)行編譯運(yùn)行(注:失敗檢查jdk版本)

5.將所設(shè)地址加上?wsdl到瀏覽器上訪(fǎng)問(wèn),如出現(xiàn)XML格式代碼,則發(fā)布成功,反之,則否;(url:http://192.168.1.105:8080/Service/ServiceHello?wsdl)

二、WebService調(diào)用方法

生成代碼方式一

1.新建一個(gè)class類(lèi),用于調(diào)用webservice。右鍵src,找到WebServiceClient,并輸入wsdl地址,選擇下載代碼的路徑;(url:http://192.168.1.105:8080/Service/ServiceHello?wsdl)

2.將地址上的文件下載下來(lái)(注意和發(fā)布JDK一致);

3.寫(xiě)調(diào)用方法調(diào)用下載下來(lái)的WebService中的java類(lèi)中的方法;

示例:

importcom.pcm.ws.jws.JwsServiceHello;importcom.pcm.ws.jws.JwsServiceHelloService;publicclassJwsClientHello{publicstaticvoidmain(String[]args){//調(diào)用webserviceJwsServiceHellohello=newJwsServiceHelloService().getJwsServiceHelloPort();Stringname=hello.getValue("panchengming");System.out.println(name);}}

生成代碼方式二

1.創(chuàng)建WebServiceProject,命名為T(mén)heClient。

2.在dos命令下輸入wsimport-s“src目錄”-p“生成類(lèi)所在包名”-keep“wsdl發(fā)布地址”

示例:wsimport-sG:workspacewebServicewebService_Projectsrc-pcom.pcm.ws.jws-keephttp://192.168.1.105:8080/Service/ServiceHello?wsdl

3.成功則返回parsingWSDL… 

generatingcode…compilingcode…

4.刷新項(xiàng)目,生成類(lèi);

5,寫(xiě)調(diào)用方法(同上);

三、總結(jié):

如何發(fā)布一個(gè)Web服務(wù):

a,在類(lèi)上添加@WebService注解(注:此注解是jdk1.6提供的,位于javax.jws.WebService包中)

b,通過(guò)EndPoint(端點(diǎn)服務(wù))發(fā)布一個(gè)WebService(注:EndPoint是jdk提供的一個(gè)專(zhuān)門(mén)用于發(fā)布服務(wù)的類(lèi),該類(lèi)的publish方法接收兩個(gè)參數(shù),一個(gè)是本地的服務(wù)地址,二是提供服務(wù)的類(lèi)。位于javax.xml.ws.Endpoint包中)

c,注:類(lèi)上添加注解@WebService,類(lèi)中所有非靜態(tài)方法都會(huì)被發(fā)布;

靜態(tài)方法和final方法不能被發(fā)布;方法上加@WebMentod(exclude=true)后,此方法不被發(fā)布;

以上就是天津卓眾教育java培訓(xùn)機(jī)構(gòu)小編介紹的“Java WebService接口生成和調(diào)用 圖文詳解”的內(nèi)容,希望對(duì)大家有幫助,更多java最新資訊請(qǐng)繼續(xù)關(guān)注天津卓眾教育java培訓(xùn)機(jī)構(gòu)官網(wǎng),每天會(huì)有精彩內(nèi)容分享與你。

培訓(xùn)啦提醒您:交易時(shí)請(qǐng)核實(shí)對(duì)方資質(zhì),對(duì)于過(guò)大宣傳或承諾需謹(jǐn)慎!任何要求預(yù)付定金、匯款等方式均存在風(fēng)險(xiǎn),謹(jǐn)防上當(dāng)。