一、 軟件開發(fā)的形式 1、SaaS:Software as a Service(軟件即服務(wù)) (1)將軟件視為一種基礎(chǔ)設(shè)施與服務(wù) (2)網(wǎng)絡(luò)無所不在,網(wǎng)絡(luò)可以看成是一個軟件服務(wù)的聚合體,是一個超級大“HUB”。 (3)開發(fā)軟件就是“聚合服務(wù)”:大服務(wù)套小服務(wù),這一服務(wù)調(diào)用另一服務(wù),基于互聯(lián)網(wǎng)協(xié)同實(shí)現(xiàn)軟件功能。 (4)高度分布式和跨平臺 2、SOA:Service Oriented Architecture(面向服務(wù)的架構(gòu)) (1)以服務(wù)作為軟件的基本構(gòu)造塊來“組裝”軟件 (2)Web Service是當(dāng)前最成熟的一種SOA技術(shù)。它將網(wǎng)站的功能封裝為可復(fù)用的軟件服務(wù),供其他Web應(yīng)用程序調(diào)用。 二、 WebService簡介 WebService技術(shù),能使得運(yùn)行在不同機(jī)器上的不同應(yīng)用無須借助附加的、專門的第三方軟件或硬件,就可以相互交換數(shù)據(jù)或集成。依據(jù)WebService 規(guī)范實(shí)施的應(yīng)用之間,無論它們所使用的語言、平臺或內(nèi)部協(xié)議是什么,都可以相互交換數(shù)據(jù)。 簡單的說,WebService就是一種跨編程語言和跨操作系統(tǒng)平臺的遠(yuǎn)程調(diào)用技術(shù)。所謂跨編程語言和跨操作平臺,就是說服務(wù)端程序采用java編寫,客戶端程序則可以采用其他編程語言編寫,反之亦然??绮僮飨到y(tǒng)平臺則是指服務(wù)端程序和客戶端程序可以在不同的操作系統(tǒng)上運(yùn)行。遠(yuǎn)程調(diào)用,就是一臺計算機(jī)的應(yīng)用可以調(diào)用其他計算機(jī)上的應(yīng)用。例如:支付寶,支付寶并沒有銀行卡等數(shù)據(jù),它只是去調(diào)用銀行提供的接口來獲得數(shù)據(jù)。還有天氣預(yù)報等,也是氣象局把自己的系統(tǒng)服務(wù)以WebService服務(wù)的形式暴露出來,讓第三方網(wǎng)站和程序可以調(diào)用這些服務(wù)功能。 三、WebService特點(diǎn) 優(yōu)點(diǎn): 1、Web Service可看成是一個可復(fù)用的Web應(yīng)用程序組件 2、Web Service與平臺無關(guān),發(fā)布后可以被不同平臺調(diào)用 3、Web Service是自說明,使用XML格式的純文本來描述自己如何使用 缺點(diǎn): 1、服務(wù)端接口方為WebService則客戶端也必須使用WebService。 2、因?yàn)閃ebService使用xml傳輸數(shù)據(jù),因此性能上不能滿足高并發(fā) 3、有點(diǎn)笨重 四、WebService組成要素 1、UDDI:查找方法,Web Service在哪里 UDDI(Universal Description,Discovery and Integration)統(tǒng)一描述、發(fā)現(xiàn)和集成。它是一種用于查找Web Service的機(jī)制。 UDDI服務(wù)器存儲了Web Service相關(guān)信息(其實(shí)就是此Web Service的WSDL文檔)可供Web應(yīng)用程序來定位和引用Web Service。 2、SOAP:通信協(xié)議,按照什么標(biāo)準(zhǔn)交換數(shù)據(jù) SOAP(Simple Object Access Protocol)是Web Service的傳輸協(xié)議。它規(guī)定Web Service 提供者和調(diào)用者之間信息的編碼和傳送方式。 SOAP協(xié)議是建立在HTTP協(xié)議之上的互聯(lián)網(wǎng)應(yīng)用層協(xié)議(使用80端口),因此,它允許信息穿過防火墻而不被攔截。 SOAP僅是一種約定,是平臺中立與語言無關(guān) SOAP與WSDL一樣,也是建立在XML規(guī)范之上,比較簡單 3、WSDL:描述文檔 WSDL(Web Service Description Language,Web服務(wù)描述語言):用于描述Web Service的一種XML格式的語言,說明服務(wù)端接口、方法、參數(shù)和返回值,通知其他的Web應(yīng)用程序如何調(diào)用自己,WSDL是隨服務(wù)發(fā)布成功,自動生成,無需編寫。 4、WebService是如何運(yùn)行的? Web Service駐留于Web Server中 使用UDDI機(jī)制查找符合要求的Web Service 網(wǎng)絡(luò)中的機(jī)器通過SOAP協(xié)議進(jìn)行通訊 五、編寫并使用自定義WebService 1、創(chuàng)建WebService工程 (1)創(chuàng)建一個空的Web項(xiàng)目,并添加后臺模塊 (2)添加Web服務(wù):添加asmx文件,并編寫web服務(wù)方法 (3)運(yùn)行服務(wù)項(xiàng)目,要注意地址需要自己補(bǔ)全 (4)測試web服務(wù)中的方法,并觀察數(shù)據(jù) 首先創(chuàng)建一個空的Web項(xiàng)目 添加asmx文件 添加成功后,可以啟動項(xiàng)目看一看(要加上地址) 選擇HelloWorld并調(diào)用 Hello World以xml的形式展現(xiàn),調(diào)用成功 自己添加一個web服務(wù)方法,數(shù)據(jù)庫隨便用一個即可 運(yùn)行看一下效果,能在WebService看到GetBooksByAuthor()這個方法 點(diǎn)擊并輸入?yún)?shù) 可以查看到數(shù)據(jù)以xml的格式展示 2、發(fā)布于服務(wù)器上 在代碼開發(fā)完成之后,需要發(fā)布到服務(wù)器上供人使用 首先在“啟用或關(guān)閉Windows功能”里,把“Internet Information Services”這一項(xiàng)全都選中并更新 選擇項(xiàng)目--->發(fā)布 選擇文件夾--->下一步 選擇文件夾位置 發(fā)布WebService 發(fā)布成功后, 在發(fā)布的物理地址中,會有這幾個文件 打開IIS管理器,右擊網(wǎng)站--->新建網(wǎng)站 配置新網(wǎng)站相關(guān)內(nèi)容,IP地址可自己選擇,主機(jī)名需要相應(yīng)的域名 在新建好的網(wǎng)站上添加權(quán)限 添加兩個用戶名IIS_IUSRS、NETWORK_SERVICE,并添加全部權(quán)限 重啟網(wǎng)站,瀏覽一下,404報錯 需要配置一下默認(rèn)文檔,選擇網(wǎng)站--->默認(rèn)文檔 添加默認(rèn)文檔 WebService可以使用 六、 在本地測試調(diào)用WebService 創(chuàng)建一個MVC5項(xiàng)目--->添加服務(wù)引用 輸入本地的WebService網(wǎng)址,可以發(fā)現(xiàn)找到對應(yīng)的服務(wù) 添加對應(yīng)的控制器方法 添加對應(yīng)的畫面 最終效果如下 |
|