WebService是一種跨編程語(yǔ)言和跨操作系統(tǒng)平臺(tái)的遠(yuǎn)程調(diào)用技術(shù)
創(chuàng)新互聯(lián)建站網(wǎng)站建設(shè)公司是一家服務(wù)多年做網(wǎng)站建設(shè)策劃設(shè)計(jì)制作的公司,為廣大用戶(hù)提供了成都網(wǎng)站建設(shè)、做網(wǎng)站,成都網(wǎng)站設(shè)計(jì),廣告投放,成都做網(wǎng)站選創(chuàng)新互聯(lián)建站,貼合企業(yè)需求,高性?xún)r(jià)比,滿(mǎn)足客戶(hù)不同層次的需求一站式服務(wù)歡迎致電。所謂遠(yuǎn)程調(diào)用,就是一臺(tái)計(jì)算機(jī)a上的一個(gè)程序可以調(diào)用到另外一臺(tái)計(jì)算機(jī)b上的一個(gè)對(duì)象的方法,譬如,銀聯(lián)提供給商場(chǎng)的pos刷卡系統(tǒng)(采用交互提問(wèn)的方式來(lái)加深大家對(duì)此技術(shù)的理解)。
遠(yuǎn)程調(diào)用技術(shù)有什么用呢?商場(chǎng)的POS機(jī)轉(zhuǎn)賬調(diào)用的轉(zhuǎn)賬方法的代碼是在銀行服務(wù)器上,還是在商場(chǎng)的pos機(jī)上呢?什么情況下可能用到遠(yuǎn)程調(diào)用技術(shù)呢?例如,amazon,天氣預(yù)報(bào)系統(tǒng),淘寶網(wǎng),校內(nèi)網(wǎng),百度等把自己的系統(tǒng)服務(wù)以webservice服務(wù)的形式暴露出來(lái),讓第三方網(wǎng)站和程序可以調(diào)用這些服務(wù)功能,這樣擴(kuò)展了自己系統(tǒng)的市場(chǎng)占有率,往大的概念上吹,就是所謂的SOA應(yīng)用。
所謂跨編程語(yǔ)言和跨操作平臺(tái),就是說(shuō)服務(wù)端程序采用java編寫(xiě),客戶(hù)端程序則可以采用其他編程語(yǔ)言編寫(xiě),反之亦然!跨操作系統(tǒng)平臺(tái)則是指服務(wù)端程序和客戶(hù)端程序可以在不同的操作系統(tǒng)上運(yùn)行。
除了WebService外,常見(jiàn)的遠(yuǎn)程調(diào)用技術(shù)還有RMI(Remotemethodinvoke)和CORBA,由于WebService的跨平臺(tái)和跨編程語(yǔ)言特點(diǎn),因此比其他兩種技術(shù)應(yīng)用更為廣泛,但性能略低。
使用JDK對(duì)Webservice的支持進(jìn)行Webservice調(diào)用時(shí)通常的操作步驟如下:
//1、創(chuàng)建一個(gè)javax.xml.ws.Service實(shí)例 javax.xml.ws.Service service = javax.xml.ws.Service.create(wsdl, serviceName); //2、通過(guò)Service實(shí)例獲取對(duì)應(yīng)的服務(wù)接口的代理 HelloService helloService = service.getPort(portName, HelloService.class); //3、通過(guò)獲取到的Webservice服務(wù)接口的代理調(diào)用對(duì)應(yīng)的服務(wù)方法 helloService.sayHello("Elim")