本發明專利技術涉及一種業務開發方法及裝置。業務開發方法包括:獲取與業務需求相關的原子服務;將所述原子服務組裝成復合服務;發布所述復合服務。業務開發裝置包括:獲取模塊,用于獲取與業務需求相關的原子服務;組裝模塊,用于將所述獲取模塊獲取的原子服務組裝成復合服務;發布模塊,用于發布所述組裝模塊組裝的復合服務。本發明專利技術的業務開發方法及裝置,基于腳本引擎Mozilla?Rhino通過在頁面編寫JavaScript腳本語言,將原子服務進行組裝編排形成新的復合服務,這種方式降低了新業務需求的響應時間,提高了新業務需求的處理速度,提高了原子服務的復用率,易于維護,是實現SOA系統“高內聚低耦合”目標的有效手段。
【技術實現步驟摘要】
本專利技術涉及計算機領域,尤其涉及一種業務開發方法及裝置。
技術介紹
JavaScript是一種基于對象和事件驅動并且具有相對安全性的客戶端腳本語言,被廣泛用于WEB開發給HTML (Hypertext Markup Language,超文本標記語言)網頁添加動態功能。Mozilla Rhino是一個完全使用Java語言編寫的開源JavaScript實現,常被用于Java程序中,為最終用戶提供腳本化能力。SOA (Service Oriented Architecture,面向服務架構)是一個組件模型,用于將應用程序中不同的功能單元(即服務)通過定義良好的接口和契約聯系起來。ESB (Enterprise Service Bus,企業服務總線)為企業及應用中分散的服務提供定位,路由,集成,管理等功能,是SOA系統中核心基礎設施。在SOA系統中,組成系統的所有組件都被看成是服務,服務層是SOA的基礎,所有的業務邏輯都通過服務來實現,為了快速滿足靈活多變的業務需求,維護人員需要開發不同的服務來實現,這樣就出現了不斷開發新需求的問題,常見的處理方式有如下兩種1,重新定義,開發業務服務來滿足新需求。這種方式是最常用的方式,主要的缺點是一方面整個系統中服務的復用率不高,隨著業務需求的不斷增加,業務模塊重復開發嚴重,造成資源浪費;另一方面業務模塊界限不清,導致維護難度增大;2,對現有的接口進行改造來滿足新需求。這種方式對原服務產生潛在影響,增加了原服務的復雜度,需要重新進行回歸測試,同時也增加維護難度。在軟件工程中,“高內聚低耦合”一直是軟件系統建設追求的技術目標,高內聚低耦合的系統具有更好的重用性、維護性和擴展性。在SOA系統中,所有的業務邏輯都是由服務這一原子組件實現,每個業務都是由單獨的服務來實現,但服務與服務不能互相調用,導致系統中的服務越來越多,維護難度增大。
技術實現思路
本專利技術所要解決的技術問題是提供一種業務開發方法及裝置,提高業務需求的處理速度,提高原子服務的復用率。為解決上述技術問題,本專利技術提出了一種業務開發方法,包括獲取與業務需求相關的原子服務;將所述原子服務組裝成復合服務;發布所述復合服務。進一步地,上述業務開發方法還可具有以下特點,在所述發布所述復合服務之后還包括運行所述復合服務。進一步地,上述業務開發方法還可具有以下特點,所述將所述原子服務組裝成復合服務包括將所述原子服務組裝成多個第一復合服務;將所述多個第一復合服務組裝成第二復合服務,所述第二復合服務為與所述業務需求對應的服務。進一步地,上述業務開發方法還可具有以下特點,所述將所述原子服務組裝成復合服務通過Mozilla Rhino腳本引擎將前臺頁面編寫的JavaScript代碼段進行解析并編譯成Java字節碼的方式實現。為解決上述技術問題,本專利技術還提出了一種業務開發裝置,包括獲取模塊,用于獲取與業務需求相關的原子服務;組裝模塊,用于將所述獲取模塊獲取的原子服務組裝成復合服務;發布模塊,用于發布所述組裝模塊組裝的復合服務。進一步地,上述業務開發裝置還可具有以下特點,還包括運行模塊,用于運行所述復合服務。進一步地,上述業務開發裝置還可具有以下特點,所述組裝模塊包括第一組裝單元,用于將所述原子服務組裝成多個第一復合服務;第二組裝單元,用于將所述多個第一復合服務組裝成第二復合服務,所述第二復合服務為與所述業務需求對應的服務。進一步地,上述業務開發裝置還可具有以下特點,所述組裝模塊通過MozillaRhino腳本引擎將前臺頁面編寫的JavaScript代碼段進行解析并編譯成Java字節碼的方式實現將所述原子服務組裝成復合服務。本專利技術的業務開發方法及裝置,基于腳本引擎Mozilla Rhino通過在頁面編寫JavaScript腳本語言,將原子服務進行組裝編排形成新的復合服務,這種方式降低了新業務需求的響應時間,提高了新業務需求的處理速度,提高了原子服務的復用率,易于維護,是實現SOA系統“高內聚低耦合”目標的有效手段。附圖說明圖1為將原子服務組裝成復合服務的示意圖。具體實施例方式本專利技術的主要構思是通過腳本引擎Mozilla Rhino將前臺頁面編寫的JavaScript代碼段進行解析并編譯成能正常運行的Java字節碼,當調用服務的時候服務器端直接運行這些Java字節碼,這種方式相當于在不更改服務器端的情況下通過JavaScript腳本動態地擴展了服務器端的功能。以下結合附圖對本專利技術的原理和特征進行描述,所舉實例只用于解釋本專利技術,并非用于限定本專利技術的范圍。本專利技術提出了一種業務開發方法,該業務開發方法包括如下步驟步驟一,獲取與業務需求相關的原子服務;其中,原子服務是指對業務系統或者源業務系統提供的業務接口,不進行任何數據改造和轉換邏輯,直接發布成Web服務,該服務的業務邏輯,請求和響應與源業務系統業務接口保持一致,這種服務稱為原子服務。與業務需求相關的原子服務可以由業務專家進行業務梳理后得到。通過業務梳理,業務專家會輸出業務需求和原子服務的對應關系,并梳理出業務需求的業務邏輯。步驟二,將步驟一獲取的原子服務組裝成復合服務;復合服務是對若干個原子服務進行邏輯編排、重新組裝成的新的Web服務。例如調用一個原子服務A,當調用結果返回正確時,則調用原子服務B,否則調用原子服務C,此由原子服務A、原子服務B和原子服務C組成的服務即為復合服務,此服務在源業務系統中并不存在。對于簡單的業務需求,可以由原子服務直接組裝成與業務需求對應的復合服務。對于復雜的業務需求,則需要由原子服務組裝成多個第一級的復合服務,再由該多個第一 級的復合服務組裝成多個第二級的復合服務……,最終組裝成與業務需求對應的服務。下面以圖1為例,說明在復雜的業務需求下,由原子服務組裝成與業務需求對應的服務的過程。圖1為將原子服務組裝成復合服務的示意圖。如圖1所示,首先,將原子服務1、原子服務2和原子服務3組裝成復合服務1,將原子服務3、原子服務4和原子服務5組裝成復合服務2 ;然后,將復合服務I和復合服務2再組裝成復合服務3。復合服務3就是與業務需求對應的服務。下面給出圖1中復合服務3的組裝過程(I)業務人員梳理出需求和原子服務1-5的業務邏輯關系;(2)發布原子服務1-5這5個原子服務;(3)根據業務邏輯,調用原子服務1-3這3個原子服務,組裝服務復合服務I ;//獲取輸入參數,對輸入參數進行重新組裝以調用原子服務I vai ruot=pin. getRootElementO;var masterServIdNode = root. selectSingleNode("MASTER_SERV_ID");var serviceNoNode = root. selectSingleNode("PHONE-NO");var pinl = "< xral version=/1 0 encoding=' GBK' standalone=' no' ><R00TXBIND-PH0NE_N0 type=' string' >" + serviceNoNode. getText () +"〈/BIND—PHONE—NOXID—TYPE type='string' >1&本文檔來自技高網...
【技術保護點】
一種業務開發方法,其特征在于,包括:獲取與業務需求相關的原子服務;將所述原子服務組裝成復合服務;發布所述復合服務。
【技術特征摘要】
【專利技術屬性】
技術研發人員:鄭亞群,
申請(專利權)人:北京思特奇信息技術股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。