新四季網

一種跨兩個中間件的系統及其編譯方法

2023-06-22 12:35:16

專利名稱:一種跨兩個中間件的系統及其編譯方法
技術領域:
本發明涉及一種跨兩個中間件的系統及其編譯方法,為軟體系統各服務提供統一接口調用格式,屬於軟體服務領域。
背景技術:
最初我們的後臺服務都是運行在TUXEDO上,隨著廣電業務的發展,移植到T0NGEASY上,同時兼容TUXED0,於是服務內出現了很多為了兼容不得不寫的代碼,給開發工作帶來一定的負擔,我們需要一種方法來屏蔽中間件平臺差異。

發明內容
本發明所要解決的技術問題是,針對現有技術的不足,提供一種可屏蔽平臺差異的跨兩個中間件的系統編譯方法。本發明解決上述技術問題的技術方案如下一種跨兩個中間件的系統編譯方法,具體步驟如下步驟1:封裝模塊將文件中存在中間件差異的中間件代碼,封裝在頭文件中;步驟2 :替換模塊調用封裝模塊發送至的封裝後的中間件代碼,將存在差異的中間件代碼替換為宏定義變量;步驟3 :編譯模塊開始預編譯,解析從替換模塊發送至的宏定義變量,轉換成可編譯的中間件代碼,完成跨兩個中間件的系統的編譯。本發明的有益效果是本發明所述的方法採用宏定義的方式,將服務長/短資料庫連接、服務聲明、參數輸入、輸出等採用宏定義的方式包裝,這樣開發人員則不必關心中間件平臺差異,只編寫和關注具體的程序邏輯實現代碼即可;屏蔽平臺差異,不僅減少了開發人員的工作量,也使程序變得更加穩定,給系統提供了一個穩定保障。在上述技術方案的基礎上,本發明還可以做如下改進。進一步,所述步驟I中封裝模塊用於定義文件中的頭文件,在頭文件中使用預編譯宏定義的方式,將存在中間件差異的中間件代碼,封裝在頭文件中。進一步,所述步驟3中預編譯中間件的過程根據中間件的不同,進行預編譯不同的中間件下的代碼。進一步,不同中間件之間差異的代碼,主要體現在資料庫連接方式、服務的聲明方式、服務輸入參數獲取方式、服務輸出參數打包方式。本發明所要解決的另一個技術問題是,針對現有技術的不足,提供一種可屏蔽平臺差異的跨兩個中間件的系統。本發明解決上述技術問題的技術方案如下一種跨兩個中間件的系統,包括封裝模塊、替換模塊和編譯模塊;所述封裝模塊用於將文件中存在中間件差異的中間件代碼,封裝在頭文件中;所述替換模塊調用封裝模塊發送至的封裝後的中間件代碼,將存在差異的中間件代碼替換為宏定義變量,並將替換後的服務程序文件發送至編譯模塊;所述編譯模塊接收從替換模塊發送至的服務程序文件,並解析從替換模塊發送至的宏定義變量,轉換成可編譯的中間件代碼,完成跨兩個中間件的系統的編譯。本發明的有益效果是本發明所述的系統採用宏定義的方式,將服務長/短資料庫連接、服務聲明、參數輸入、輸出等採用宏定義的方式包裝,這樣開發人員則不必關心中間件平臺差異,只編寫和關注具體的程序邏輯實現代碼即可;屏蔽平臺差異,不僅減少了開發人員的工作量,也使程序變得更加穩定,給系統提供了一個穩定保障。在上述技術方案的基礎上,本發明還可以做如下改進。進一步,所述封裝模塊用於定義文件中的頭文件,在頭文件中使用預編譯宏定義的方式,將存在中間件差異的中間件代碼,封裝在頭文件中。 進一步,所述編譯模塊根據中間件的不同,進行預編譯不同的中間件下的代碼。進一步,不同中間件之間差異的代碼,主要體現在資料庫連接方式、服務的聲明方式、服務輸入參數獲取方式、服務輸出參數打包方式。


圖1為本發明具體實施例1所述一種跨兩個中間件的系統編譯方法流程圖;圖2為本發明具體實施例2所述一種跨兩個中間件的系統編譯方法編譯圖;圖3為本發明具體實施例3所述的一種跨兩個中間件的系統的結構圖。附圖中,各標號所代表的部件列表如下1、封裝模塊,2、替換模塊,3、編譯模塊。
具體實施例方式以下結合附圖對本發明的原理和特徵進行描述,所舉實例只用於解釋本發明,並非用於限定本發明的範圍。如圖1所示,本發明具體實施例1所述方法一種跨兩個中間件的系統編譯方法,具體步驟如下步驟1:封裝模塊將文件中存在中間件差異的中間件代碼,封裝在頭文件中;步驟2 :替換模塊調用封裝模塊發送至的封裝後的中間件代碼,將存在差異的中間件代碼替換為宏定義變量;步驟3 :編譯模塊開始預編譯,解析從替換模塊發送至的宏定義變量,轉換成可編譯的中間件代碼,完成跨兩個中間件的系統的編譯。所述步驟I中封裝模塊用於定義文件中的頭文件,在頭文件中使用預編譯宏定義的方式,將存在中間件差異的中間件代碼,封裝在頭文件中。所述步驟3中預編譯中間件的過程根據中間件的不同,進行預編譯不同的中間件下的代碼。不同中間件之間差異的代碼,主要體現在資料庫連接方式、服務的聲明方式、月艮務輸入參數獲取方式、服務輸出參數打包方式。如圖2所示,本方法具體實施例2實現了不同中間件下服務程序的兼容,目前在TUXED0/T0NGEASY兩種中間件服務程序中得到實施驗證。實施方式
1、定義公共的頭文件pub_server. h,在頭文件使用預編譯宏定義的方式,將不同中間件差異的代碼,封裝成統一的宏定義變量DBL0NGC0NNECT :資料庫連接方式DECLARE_SERVICE :服務的聲明BEGIN_SERVICE :服務輸入參數獲取方式ADD_VALUE32 :服務輸出參數打包方式2、編寫某一服務 R1052. cpa)在服務中,定義資料庫連接方式的代碼,使用宏定義DBL0NGC0NNECT。b)服務的聲明使用宏定義DECLARE_SERVICE:DECLARE_SERVICE(sl052Cfm)c )服務輸入參數獲取,使用BEGIN_SERVICE;d )服務輸出參數打包,使用ADD_VALUE32 (O, sEffDate);ADD_VALUE32(I, sExpDate);3、編譯服務R1052.Cp,則會根據中間件的不同,把程序中使用的預編譯宏定義變量轉換成各自中間件下的代碼,完成程序的兼容。如圖3所示,為本發明具體實施例3所述的一種跨兩個中間件的系統,包括封裝模塊1、替換模塊2和編譯模塊3 ;所述封裝模塊I用於將文件中存在中間件差異的中間件代碼,封裝在頭文件中;所述替換模塊2調用封裝模塊I發送至的封裝後的中間件代碼,將存在差異的中間件代碼替換為宏定義變量,並將替換後的服務程序文件發送至編譯模塊3 ;所述編譯模塊3接收從替換模塊2發送至的服務程序文件,並解析從替換模塊發送至的宏定義變量,轉換成可編譯的中間件代碼,完成跨兩個中間件的系統的編譯。所述封裝模塊I用於定義文件中的頭文件,在頭文件中使用預編譯宏定義的方式,將存在中間件差異的中間件代碼,封裝在頭文件中。所述編譯模塊3根據中間件的不同,進行預編譯不同的中間件下的代碼。不同中間件之間差異的代碼,主要體現在資料庫連接方式、服務的聲明方式、月艮務輸入參數獲取方式、服務輸出參數打包方式。以上所述僅為本發明的較佳實施例,並不用以限制本發明,凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種跨兩個中間件的系統編譯方法,其特徵在於,具體步驟如下步驟1:封裝模塊將文件中存在中間件差異的中間件代碼,封裝在頭文件中;步驟2 :替換模塊調用封裝模塊發送至的封裝後的中間件代碼,將存在差異的中間件代碼替換為宏定義變量;步驟3 :編譯模塊開始預編譯,解析從替換模塊發送至的宏定義變量,轉換成可編譯的中間件代碼,完成跨兩個中間件的系統的編譯。
2.根據權利要求1所述一種跨兩個中間件的系統編譯方法,其特徵在於,所述步驟I中封裝模塊用於定義文件中的頭文件,在頭文件中使用預編譯宏定義的方式,將存在中間件差異的中間件代碼,封裝在頭文件中。
3.根據權利要求2所述一種跨兩個中間件的系統編譯方法,其特徵在於,所述步驟3中編譯模塊預編譯中間件的過程根據中間件的不同,進行預編譯不同的中間件下的代碼。
4.根據權利要求1-3任一項所述一種跨兩個中間件的系統編譯方法,其特徵在於,不同中間件之間差異的代碼,體現在資料庫連接方式、服務的聲明方式、服務輸入參數獲取方式、服務輸出參數打包方式。
5.一種跨兩個中間件的系統,其特徵在於,包括封裝模塊、替換模塊和編譯模塊;所述封裝模塊用於將文件中存在中間件差異的中間件代碼,封裝在頭文件中;所述替換模塊調用封裝模塊發送至的封裝後的中間件代碼,將存在差異的中間件代碼替換為宏定義變量,並將替換後的服務程序文件發送至編譯模塊;所述編譯模塊接收從替換模塊發送至的服務程序文件,並解析從替換模塊發送至的宏定義變量,轉換成可編譯的中間件代碼,完成跨兩個中間件的系統的編譯。
6.根據權利要求5所述一種跨兩個中間件的系統,其特徵在於,所述封裝模塊用於定義文件中的頭文件,在頭文件中使用預編譯宏定義的方式,將存在中間件差異的中間件代碼,封裝在頭文件中。
7.根據權利要求6所述一種跨兩個中間件的系統,其特徵在於,所述編譯模塊根據中間件的不同,進行預編譯不同的中間件下的代碼。
8.根據權利要求5-7任一項所述一種跨兩個中間件的系統,其特徵在於,不同中間件之間差異的代碼,體現在資料庫連接方式、服務的聲明方式、服務輸入參數獲取方式、服務輸出參數打包方式。
全文摘要
本發明涉及一種跨兩個中間件的系統及其編譯方法,其編譯方法,具體步驟如下步驟1封裝模塊將文件中存在中間件差異的中間件代碼,封裝在頭文件中;步驟2替換模塊調用封裝模塊發送至的封裝後的中間件代碼,將存在差異的中間件代碼替換為宏定義變量;步驟3編譯模塊開始預編譯,解析從替換模塊發送至的宏定義變量,轉換成可編譯的中間件代碼,完成跨兩個中間件的系統的編譯。本發明所述的方法採用宏定義的方式,將服務長/短資料庫連接、服務聲明、參數輸入、輸出等採用宏定義的方式包裝,這樣開發人員則不必關心中間件平臺差異;屏蔽平臺差異,不僅減少了開發人員的工作量,也使程序變得更加穩定,給系統提供了一個穩定保障。
文檔編號G06F9/44GK103019686SQ20121047366
公開日2013年4月3日 申請日期2012年11月20日 優先權日2012年11月20日
發明者尹永興, 鹿林安, 檀敬庭 申請人:北京思特奇信息技術股份有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀