1.一種基于接口的數(shù)據(jù)通信方法,其特征在于,包括API函數(shù)服務(wù)宿主層、訪問邏輯控制層、數(shù)據(jù)庫訪問層以及若干數(shù)據(jù)庫,其通信過程為:
當(dāng)用戶在客戶端提出調(diào)用數(shù)據(jù)庫的請求時,該API函數(shù)服務(wù)宿主層生成API接口并進(jìn)行管理;
用戶的請求通過上述API函數(shù)服務(wù)宿主層發(fā)送到訪問邏輯控制層,邏輯訪問控制層進(jìn)行語義解析,構(gòu)建邏輯規(guī)則,同時返回結(jié)果及請求限制;
當(dāng)訪問邏輯控制層解析請求后發(fā)現(xiàn)該請求無限制信息,則請求調(diào)用數(shù)據(jù)庫訪問層,該數(shù)據(jù)庫訪問層連接若干數(shù)據(jù)庫,數(shù)據(jù)庫訪問層根據(jù)請求調(diào)用數(shù)據(jù)庫并返回響應(yīng)內(nèi)容,實(shí)現(xiàn)用戶調(diào)用數(shù)據(jù)庫。
2.根據(jù)權(quán)利要求1所述的一種基于接口的數(shù)據(jù)通信方法,其特征在于,API函數(shù)服務(wù)宿主層包括以下模塊:
公共查詢模塊,根據(jù)系統(tǒng)中的API對外提供查詢服務(wù),負(fù)責(zé)查詢現(xiàn)有API實(shí)例,包括狀態(tài)、函數(shù)參數(shù)說明、示例代碼、服務(wù)控制人、調(diào)用方信息;
API實(shí)例管理模塊,實(shí)現(xiàn)API實(shí)例的維護(hù)、控制,負(fù)責(zé)管理API實(shí)例的發(fā)布、啟用狀態(tài)、訪問信息、訪問權(quán)限控制、狀態(tài)查詢;
API接口及類生成模塊,根據(jù)API實(shí)例管理模塊的指令生成API發(fā)布所需的接口和類的Java代碼;
Java及時編譯模塊,根據(jù)指定的Java文件和構(gòu)建路徑,編譯Java代碼為Class或是Object;
API函數(shù)構(gòu)造模塊,實(shí)現(xiàn)API函數(shù)的構(gòu)造和發(fā)布功能,將構(gòu)造的API函數(shù)發(fā)送到API宿主模塊;
API宿主模塊,提供WebService服務(wù)讓外部從指定的入口點(diǎn)進(jìn)行訪問,從而提供服務(wù)。
3.根據(jù)權(quán)利要求1所述的一種基于接口的數(shù)據(jù)通信方法,其特征在于,訪問邏輯控制層包括以下邏輯規(guī)則模塊:
邏輯控制管理模塊,通過配置下述邏輯規(guī)則宿主模塊的入口和各個邏輯規(guī)則模塊實(shí)現(xiàn)邏輯規(guī)則的控制,實(shí)現(xiàn)狀態(tài)和日志的讀??;
邏輯規(guī)則生成模塊,根據(jù)程序定義的接口和通用類生成規(guī)則類的實(shí)例,并添加到邏輯規(guī)則宿主模塊;
邏輯規(guī)則宿主模塊,提供唯一入口點(diǎn)供外部調(diào)用,實(shí)現(xiàn)集成控制,并在入口點(diǎn)執(zhí)行環(huán)境實(shí)例規(guī)則模塊并且調(diào)用來實(shí)現(xiàn)規(guī)則的控制;
邏輯規(guī)則狀態(tài)監(jiān)控模塊,此模塊通過邏輯規(guī)則宿主模塊入口的回調(diào)來實(shí)現(xiàn)狀態(tài)的讀取,并記錄日志信息,以實(shí)現(xiàn)所有操作的可回溯,該日志記錄在日志模塊中,日志模塊以Log日志的形式記錄用戶或系統(tǒng)所有操作及訪問流程。
4.根據(jù)權(quán)利要求3所述的一種基于接口的數(shù)據(jù)通信方法,其特征在于,所述邏輯控制管理模塊通過維護(hù)邏輯規(guī)則,添加、刪除、啟用、停用邏輯規(guī)則模塊,通過調(diào)用邏輯規(guī)則狀態(tài)監(jiān)控模塊獲取邏輯規(guī)則宿主的運(yùn)作狀態(tài)實(shí)時信息和日志。
5.根據(jù)權(quán)利要求3所述的一種基于接口的數(shù)據(jù)通信方法,其特征在于,所述邏輯規(guī)則生成模塊響應(yīng)邏輯控制管理模塊的調(diào)用,生成邏輯規(guī)則宿主模塊指定的控制規(guī)則,并添加到邏輯規(guī)則宿主模塊,實(shí)現(xiàn)邏輯規(guī)則的添加。
6.根據(jù)權(quán)利要求3所述的一種基于接口的數(shù)據(jù)通信方法,其特征在于,所述邏輯規(guī)則宿主模塊通過工廠反射的模式,松耦合的形式調(diào)用順序的調(diào)用訪問邏輯控制層的各個模塊,每一個邏輯規(guī)則模塊按照程序定義接口進(jìn)行執(zhí)行并返回。
7.根據(jù)權(quán)利要求3所述的一種基于接口的數(shù)據(jù)通信方法,其特征在于,邏輯規(guī)則狀態(tài)監(jiān)控模塊定義唯一無阻攔式回調(diào)函數(shù),供邏輯規(guī)則宿主模塊入口點(diǎn)回調(diào),通過函數(shù)的回調(diào)信息,獲取當(dāng)前狀態(tài)并記錄和處理。
8.根據(jù)權(quán)利要求3所述的一種基于接口的數(shù)據(jù)通信方法,其特征在于,邏輯訪問控制層還包括安全審計(jì)模塊,返回請求限制通過安全審計(jì)模塊實(shí)現(xiàn),該安全審計(jì)模塊通過訪問來源以及連接安全的審計(jì),進(jìn)行請求過濾,從而過濾受限訪問或者非信任請求訪問,并向API函數(shù)服務(wù)宿主層返回該請求限制的內(nèi)容。
9.根據(jù)權(quán)利要求8所述的一種基于接口的數(shù)據(jù)通信方法,其特征在于,所述安全審計(jì)模塊提供WebService接口,用于自定義安全連接或非安全連接,即當(dāng)該安全審計(jì)模塊審核請求內(nèi)容通過時,實(shí)現(xiàn)訪問邏輯控制層與數(shù)據(jù)庫訪問層之間的安全連接,否則則不進(jìn)行連接。
10.根據(jù)權(quán)利要求1所述的一種基于接口的數(shù)據(jù)通信方法,其特征在于,所述數(shù)據(jù)庫訪問層包括以下模塊:
數(shù)據(jù)連接管理模塊,配置指定的數(shù)據(jù)庫實(shí)例信息和開關(guān),以供連接模塊的調(diào)用,來實(shí)現(xiàn)連接數(shù)據(jù)庫的控制,即此模塊管理數(shù)據(jù)庫實(shí)例的掛載和卸載,數(shù)據(jù)庫驅(qū)動的添加,并調(diào)用數(shù)據(jù)連接模塊實(shí)現(xiàn)數(shù)據(jù)庫操作的掛起;
數(shù)據(jù)連接模塊,此模塊指定唯一的入口點(diǎn)供調(diào)用來實(shí)現(xiàn)數(shù)據(jù)庫的操作,即通過管理模塊配置信息和入口調(diào)用信息,來判斷數(shù)據(jù)庫的連接類型并動態(tài)載入連接驅(qū)動,通過驅(qū)動模塊操作數(shù)據(jù)庫。