[發(fā)明專利]一種動態(tài)庫自動服務(wù)化封裝方法、系統(tǒng)及應(yīng)用有效
| 申請?zhí)枺?/td> | 202010124121.2 | 申請日: | 2020-02-27 |
| 公開(公告)號: | CN111459489B | 公開(公告)日: | 2023-09-26 |
| 發(fā)明(設(shè)計)人: | 張小剛;齊樂;王紹源;邊耐政;陳華 | 申請(專利權(quán))人: | 湖南大學(xué) |
| 主分類號: | G06F8/40 | 分類號: | G06F8/40;G06F9/445 |
| 代理公司: | 湖南兆弘專利事務(wù)所(普通合伙) 43008 | 代理人: | 周長清;廖元寶 |
| 地址: | 410082 湖*** | 國省代碼: | 湖南;43 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 動態(tài) 自動 服務(wù) 封裝 方法 系統(tǒng) 應(yīng)用 | ||
1.一種動態(tài)庫自動服務(wù)化封裝方法,其特征在于,包括步驟:
S01、預(yù)先進行動態(tài)庫、動態(tài)庫中函數(shù)的描述,形成函數(shù)描述文件;
S02、讀取函數(shù)描述文件并進行解析,獲得待加載動態(tài)庫的名稱和路徑、以及動態(tài)庫內(nèi)各函數(shù)的類型,建立函數(shù)名稱/類型映射表,并對動態(tài)庫進行預(yù)加載;
S03、根據(jù)函數(shù)名稱從函數(shù)名稱/類型映射表中查找到對應(yīng)的函數(shù)類型指針,獲得該函數(shù)在預(yù)加載的動態(tài)庫中對應(yīng)的地址,完成函數(shù)的調(diào)用;
所述步驟S03的具體過程為:
S31、接收到函數(shù)列表信息請求后,讀取由函數(shù)描述文件解析而成的函數(shù)列表信息;
S32、根據(jù)函數(shù)調(diào)用請求中的函數(shù)名稱以及參數(shù)信息,根據(jù)函數(shù)名稱從函數(shù)名稱/類型映射表中查找到對應(yīng)的函數(shù)類型指針,獲得該函數(shù)在預(yù)加載的動態(tài)庫中對應(yīng)的地址、函數(shù)類型,以及該類型函數(shù)的處理函數(shù),在處理函數(shù)中完成對函數(shù)的調(diào)用;
在步驟S01中,所述函數(shù)的描述基于函數(shù)類型,函數(shù)類型的定義方法如下:
S11、對函數(shù)類型進行簡化,其中函數(shù)類型是基于函數(shù)的函數(shù)與返回值;
S12、基于簡化的函數(shù),對函數(shù)類型進行定義:返回值類型_參數(shù)1類型|參數(shù)2類型|參數(shù)3類型|…,其中下劃線前是函數(shù)返回值類型,下劃線后面為第1,2,3…參數(shù)的類型。
2.?根據(jù)權(quán)利要求1所述的動態(tài)庫自動服務(wù)化封裝方法,其特征在于,在步驟S01中,所述函數(shù)描述文件通過json語法將庫提供商、庫路徑、庫中函數(shù)名、函數(shù)類型以及函數(shù)功能進行組織而得到。
3.一種動態(tài)庫自動服務(wù)化封裝系統(tǒng),用于執(zhí)行如權(quán)利要求1或2所述的動態(tài)庫自動服務(wù)化封裝方法,其特征在于,包括
文件解析模塊,用于對預(yù)先形成的函數(shù)描述文件進行解析,建立函數(shù)名稱/類型映射表以及本地函數(shù)列表;
動態(tài)庫預(yù)加載模塊,用于從函數(shù)描述文件中獲得待加載動態(tài)庫的名稱和路徑,對動態(tài)庫進行預(yù)加載;
服務(wù)發(fā)布交互模塊,用于接收函數(shù)列表查詢請求,讀取本地函數(shù)列表,獲取函數(shù)名稱;接收函數(shù)調(diào)用請求,調(diào)用函數(shù)解析調(diào)用模塊;
函數(shù)解析調(diào)用模塊,用于根據(jù)服務(wù)發(fā)布交互模塊獲取的函數(shù)名稱,從函數(shù)名稱/類型映射表中查找到對應(yīng)的函數(shù)類型指針,獲得該函數(shù)在預(yù)加載的動態(tài)庫中對應(yīng)的地址,完成本地函數(shù)的調(diào)用;
在文件解析模塊中,預(yù)先進行動態(tài)庫、動態(tài)庫中函數(shù)的描述,形成函數(shù)描述文件;其中所述函數(shù)的描述基于函數(shù)類型,函數(shù)類型的定義方法如下:
對函數(shù)類型進行簡化,其中函數(shù)類型是基于函數(shù)的函數(shù)與返回值;
基于簡化的函數(shù),對函數(shù)類型進行定義:返回值類型_參數(shù)1類型|參數(shù)2類型|參數(shù)3類型|…,其中下劃線前是函數(shù)返回值類型,下劃線后面為第1,2,3…參數(shù)的類型。
4.根據(jù)權(quán)利要求3所述的動態(tài)庫自動服務(wù)化封裝系統(tǒng),其特征在于,還包括函數(shù)類型庫,用于加載各種預(yù)設(shè)函數(shù)類型指針以及該類函數(shù)參數(shù)解析方法。
5.根據(jù)權(quán)利要求4所述的動態(tài)庫自動服務(wù)化封裝系統(tǒng),其特征在于,所述服務(wù)發(fā)布交互模塊包括函數(shù)列表查詢服務(wù)接口和函數(shù)調(diào)用服務(wù)接口。
6.一種動態(tài)庫自動服務(wù)化封裝系統(tǒng)的應(yīng)用方法,其特征在于,
當客戶端進程發(fā)送獲取函數(shù)列表信息請求后,動態(tài)庫自動服務(wù)化封裝系統(tǒng)形成的服務(wù)端創(chuàng)建新線程,在該線程中讀取函數(shù)描述文件并進行解析,并返回給客戶端;
客戶端獲得函數(shù)列表信息,傳遞需要調(diào)用的函數(shù)名稱以及對應(yīng)參數(shù)給服務(wù)端;
針對客戶端發(fā)來的函數(shù)調(diào)用請求,服務(wù)端創(chuàng)建新的線程,在線程中對函數(shù)參數(shù)進行解析,根據(jù)函數(shù)名獲得庫中的地址、函數(shù)類型,以及該類型函數(shù)的處理函數(shù);
在處理函數(shù)中完成對本地函數(shù)的調(diào)用,函數(shù)的返回值將轉(zhuǎn)換成字符串送回客戶端;
處理函數(shù)中完成對本地函數(shù)的調(diào)用的具體過程為:
接收到函數(shù)列表信息請求后,讀取由函數(shù)描述文件解析而成的函數(shù)列表信息;
根據(jù)函數(shù)調(diào)用請求中的函數(shù)名稱以及參數(shù)信息,根據(jù)函數(shù)名稱從函數(shù)名稱/類型映射表中查找到對應(yīng)的函數(shù)類型指針,獲得該函數(shù)在預(yù)加載的動態(tài)庫中對應(yīng)的地址、函數(shù)類型,以及該類型函數(shù)的處理函數(shù),在處理函數(shù)中完成對函數(shù)的調(diào)用;
在函數(shù)描述文件中,所述函數(shù)的描述基于函數(shù)類型,函數(shù)類型的定義方法如下:
對函數(shù)類型進行簡化,其中函數(shù)類型是基于函數(shù)的函數(shù)與返回值;
基于簡化的函數(shù),對函數(shù)類型進行定義:返回值類型_參數(shù)1類型|參數(shù)2類型|參數(shù)3類型|…,其中下劃線前是函數(shù)返回值類型,下劃線后面為第1,2,3…參數(shù)的類型。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于湖南大學(xué),未經(jīng)湖南大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010124121.2/1.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 服務(wù)票據(jù)發(fā)行系統(tǒng)及服務(wù)票據(jù)發(fā)行服務(wù)
- 出租服務(wù)服務(wù)器和出租服務(wù)系統(tǒng)
- 服務(wù)開放方法及系統(tǒng)、服務(wù)開放服務(wù)器
- 基于服務(wù)券服務(wù)的在線企業(yè)服務(wù)平臺
- 退稅服務(wù)系統(tǒng)、退稅服務(wù)平臺及其服務(wù)方法
- 服務(wù)亭(服務(wù)驛站)
- 公共服務(wù)自助服務(wù)機
- 服務(wù)提供服務(wù)器、服務(wù)提供系統(tǒng)以及服務(wù)提供方法
- 服務(wù)提供服務(wù)器、服務(wù)提供系統(tǒng)以及服務(wù)提供方法
- 服務(wù)提供服務(wù)器、服務(wù)提供系統(tǒng)以及服務(wù)提供方法





