更新時(shí)間:2020-04-10 11:51:33 來源:動力節(jié)點(diǎn) 瀏覽4220次
簡單來說,webservice就是遠(yuǎn)程調(diào)用技術(shù),也叫XMLWebServiceWebService是一種可以接收從Internet或者Intranet上的其它系統(tǒng)中傳遞過來的請求,并且是輕量級的、獨(dú)立的通訊技術(shù)。是通過SOAP在Web上提供的軟件服務(wù),使用WSDL文件進(jìn)行說明,并通過UDDI進(jìn)行注冊。
XML:(ExtensibleMarkupLanguage)擴(kuò)展型可標(biāo)記語言,面向短期的臨時(shí)數(shù)據(jù)處理、面向萬維網(wǎng)絡(luò),是Soap的基礎(chǔ)。
SOAP:(SimpleObjectAccessProtocol)簡單對象存取協(xié)議。是XMLWebService的通信協(xié);當(dāng)用戶通過UDDI找到你的WSDL描述文檔后,他通過可以SOAP調(diào)用你建立的Web服務(wù)中的一個或多個操作;SOAP是XML文檔形式的調(diào)用方法的規(guī)范,它可以支持不同的底層接口,像HTTP(S)或者SMTP。
WSDL:(WebServicesDescriptionLanguage)WSDL文件是一個XML文檔,用于說明一組SOAP消息以及如何交換這些消息,大多數(shù)情況下由軟件自動生成和使用。
如何發(fā)布一個webservice
如何發(fā)布一個webservuce呢?下面我們通過一個簡單的例子慢慢的告訴大家。
1.創(chuàng)建一個web服務(wù)端項(xiàng)目
為了簡單明了,我一共創(chuàng)建了三個類,一個接口,一個接口實(shí)現(xiàn)類,一個發(fā)布類(main方法)。具體如下:
上面圖中是一個WebService接口,其中定義了一個sayHello(Stringname)的方法
記住一定要在類上加上@WebService注解
@WebMethod注解聲明了這個方法是要發(fā)布出去的方法
上面這個類是WebService接口的實(shí)現(xiàn)類,具體實(shí)現(xiàn)sayHello(Stringname)方法的方法體
最后我們在服務(wù)器端運(yùn)行WebServicePublish類中的main方法
控制臺打印出發(fā)布webservice成功!見下圖:
在瀏覽器中輸入我們在WebServicePublish類中定義的address?wsdl(注意一定要加wsdl),瀏覽器顯示如下,那么我們這個WebService就發(fā)布成功了。見下圖:
下面,我們來看一下客戶端怎么調(diào)用(這也是網(wǎng)上版本最多最雜的一步,大多數(shù)人前面都很明白,但是到了這里就直接懵圈了)
2.創(chuàng)建一個客戶端項(xiàng)目
首先我們先創(chuàng)建一個client11客戶端的項(xiàng)目,然后我們通過Win+R組合鍵調(diào)出cmd,在cmd中輸入wsimport-s我們這個項(xiàng)目的src路徑-keep我們發(fā)布的webservice地址
例如:
然后去eclipse中刷新我們的項(xiàng)目,就會發(fā)現(xiàn)系統(tǒng)自動幫我們生成了許多類。
當(dāng)然WSclient是我在系統(tǒng)生成之后自己寫的一個客戶端的測試類
我們就來重點(diǎn)看一下這個測試類是怎么寫的:
運(yùn)行過后控制臺輸出如下:
現(xiàn)在我們可以看到的“hahahaha”就是服務(wù)器中寫的,到此我們這個極其簡單的webservice服務(wù)器客戶端就完成了。
以上就是動力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對“Java基礎(chǔ)學(xué)習(xí):webservice實(shí)例教程”的內(nèi)容進(jìn)行的回答,希望對大家有所幫助,如有疑問,請?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。
相關(guān)閱讀
初級 202925
初級 203221
初級 202629
初級 203743