本發(fā)明的技術(shù)方案:
[0056]本方案通過Java技術(shù)實(shí)現(xiàn),對(duì)擴(kuò)展的元數(shù)據(jù)增加了HashMap類型的屬性:properties,用于保存業(yè)務(wù)應(yīng)用自定義的元數(shù)據(jù)的定義信息,并提供set和get方法,業(yè)務(wù)應(yīng)用可以按各自的業(yè)務(wù)需求調(diào)用set實(shí)現(xiàn)元數(shù)據(jù)的擴(kuò)展,并調(diào)用get獲取擴(kuò)展的元數(shù)據(jù)的定義
?目息O
[0057]具體實(shí)現(xiàn)步驟如下:
[0058]一、設(shè)計(jì)擴(kuò)展的元數(shù)據(jù)定義的數(shù)據(jù)結(jié)構(gòu)
[0059]使用HashMap〈String,String>properties保存擴(kuò)展的元數(shù)據(jù)的定義信息:
[0000]1、HashMap類型的屬性中Key作為擴(kuò)展的元數(shù)據(jù)定義的屬性唯一鍵,用于標(biāo)識(shí)擴(kuò)展的元數(shù)據(jù)定義的用途;[0061 ] 2、HashMap類型的屬性中Value作為擴(kuò)展的元數(shù)據(jù)定義的屬性值,用于標(biāo)識(shí)擴(kuò)展的元數(shù)據(jù)定義屬性的值,該屬性值支持各種數(shù)據(jù)類型;
[0062]3、數(shù)據(jù)庫(kù)中設(shè)計(jì)了一個(gè)property表,關(guān)鍵字段如下:
[0063]name:擴(kuò)展的元數(shù)據(jù)定義的屬性名稱,對(duì)應(yīng)properties的Key ;
[0064]value:擴(kuò)展的元數(shù)據(jù)定義的屬性值,對(duì)應(yīng)properties的Value;
[0065]metadata_type:標(biāo)識(shí)HashMap類型的屬性對(duì)應(yīng)的元數(shù)據(jù)類型,該元數(shù)據(jù)類型的值為客戶實(shí)體、字段、關(guān)聯(lián)關(guān)系等等;
[0066]me tadata_id:標(biāo)識(shí)HashMap類型的屬性對(duì)應(yīng)的元數(shù)據(jù)類型ID,比如說客戶實(shí)體、訂單主子關(guān)系等等,
[0067 ]其中,name、metadata_type 和 metadata_id 三者可以組合屬性唯一鍵,metadata_七5^卩6與1116七3(^七3_1(1相對(duì)應(yīng),1116七3(^七3_七7口6表示元數(shù)據(jù)類型,以字符串的形式來表示,me tadata_i d表示元數(shù)據(jù)的具體對(duì)象以數(shù)值來表示。
[0068]二、設(shè)置擴(kuò)展的元數(shù)據(jù)定義信息
[0069]為了更靈活的支持對(duì)元數(shù)據(jù)進(jìn)行擴(kuò)展,允許業(yè)務(wù)應(yīng)用在兩種狀態(tài)下對(duì)元數(shù)據(jù)定義進(jìn)行擴(kuò)展,一是建模設(shè)計(jì)狀態(tài),二是業(yè)務(wù)系統(tǒng)運(yùn)行狀態(tài),更靈活的支持對(duì)元數(shù)據(jù)定義的擴(kuò)展。
[°07°] 1、公共開發(fā)平臺(tái)提供 setPropertity(key ,value)方法;
[0071]2、在業(yè)務(wù)應(yīng)用處于建模設(shè)計(jì)狀態(tài)時(shí),在元數(shù)據(jù)初始化時(shí),公共開發(fā)平臺(tái)根據(jù)業(yè)務(wù)應(yīng)用定義的擴(kuò)展調(diào)用本setPropertity(key,value)方法,將擴(kuò)展的元數(shù)據(jù)的定義信息保存到數(shù)據(jù)庫(kù)的property表(S卩屬性表)中,并加載到HashMap類型的屬性中。
[0072]三、獲取擴(kuò)展的元數(shù)據(jù)的定義信息
[0073]業(yè)務(wù)應(yīng)用可以獲取到擴(kuò)展的元數(shù)據(jù)的定義信息,并按自己的業(yè)務(wù)需求使用,公共開發(fā)平臺(tái)不限制業(yè)務(wù)應(yīng)用的具體使用方式。
[0074]1、公共開發(fā)后臺(tái)提供getPropertity(key)方法;
[0075]2、業(yè)務(wù)應(yīng)用調(diào)用86丨?1'(^61'1:;^7(1?^)方法后,將擴(kuò)展的元數(shù)據(jù)的定義信息加載到內(nèi)存中,以在業(yè)務(wù)應(yīng)用運(yùn)行時(shí)按各自的業(yè)務(wù)需求對(duì)定義信息進(jìn)行操作;
[0076]3、既可以用在業(yè)務(wù)應(yīng)用的后臺(tái)代碼,也可以用于前端代碼,舉例如下:
[0077]I)擴(kuò)展了業(yè)務(wù)實(shí)體是否可以全文檢索后,后臺(tái)可以在實(shí)體保存時(shí)把相關(guān)實(shí)體數(shù)據(jù)加入全文檢索中心;
[0078]2)擴(kuò)展了業(yè)務(wù)實(shí)體的字段是否可以作為查詢條件,則前臺(tái)可以按定義的值,顯示相應(yīng)的查詢表單。
[0079]以上結(jié)合附圖詳細(xì)說明了本發(fā)明的技術(shù)方案,避免了擴(kuò)展的元數(shù)據(jù)影響到其他的業(yè)務(wù)應(yīng)用,以及增強(qiáng)了公共開發(fā)平臺(tái)數(shù)據(jù)建模功能的靈活性和健壯性。
[0080]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種元數(shù)據(jù)擴(kuò)展方法,其特征在于,包括: 當(dāng)對(duì)業(yè)務(wù)應(yīng)用擴(kuò)展元數(shù)據(jù)時(shí),為擴(kuò)展的元數(shù)據(jù)添加HashMap類型的屬性; 將所述擴(kuò)展的元數(shù)據(jù)的定義信息保存到所述HashMap類型的屬性中。2.根據(jù)權(quán)利要求1所述的元數(shù)據(jù)擴(kuò)展方法,其特征在于,所述HashMap類型的屬性包括:屬性唯一鍵和屬性值,所述屬性唯一鍵用于標(biāo)識(shí)所述擴(kuò)展的元數(shù)據(jù)定義的用途,所述屬性值用于標(biāo)識(shí)所述擴(kuò)展的元數(shù)據(jù)定義屬性的值。3.根據(jù)權(quán)利要求2所述的元數(shù)據(jù)擴(kuò)展方法,其特征在于,所述為擴(kuò)展的元數(shù)據(jù)添加HashMap類型的屬性的步驟,還包括: 新建所述擴(kuò)展的元數(shù)據(jù)的屬性表,所述屬性表中的關(guān)鍵字段包括:屬性名稱、所述屬性值、元數(shù)據(jù)類型和元數(shù)據(jù)的具體對(duì)象。4.根據(jù)權(quán)利要求1至3中任一項(xiàng)所述的元數(shù)據(jù)擴(kuò)展方法,其特征在于,所述將所述擴(kuò)展的元數(shù)據(jù)的定義信息保存到所述HashMap類型的屬性中的步驟,具體包括: 在所述業(yè)務(wù)應(yīng)用處于建模設(shè)計(jì)狀態(tài)或者運(yùn)行狀態(tài)時(shí),將所述擴(kuò)展的元數(shù)據(jù)的所述定義信息保存到所述HashMap類型的屬性中。5.根據(jù)權(quán)利要求1至3中任一項(xiàng)所述的元數(shù)據(jù)擴(kuò)展方法,其特征在于,所述將所述擴(kuò)展的元數(shù)據(jù)的定義信息保存到所述HashMap類型的屬性中的步驟之后,包括: 將所述擴(kuò)展的元數(shù)據(jù)的所述定義信息加載到內(nèi)存中,以在所述業(yè)務(wù)應(yīng)用運(yùn)行時(shí)使用所述內(nèi)存中緩存的所述定義信息。6.一種元數(shù)據(jù)擴(kuò)展裝置,其特征在于,包括: 添加單元,用于當(dāng)對(duì)業(yè)務(wù)應(yīng)用擴(kuò)展元數(shù)據(jù)時(shí),為擴(kuò)展的元數(shù)據(jù)添加HashMap類型的屬性; 保存單元,用于將所述擴(kuò)展的元數(shù)據(jù)的定義信息保存到所述HashMap類型的屬性中。7.根據(jù)權(quán)利要求6所述的元數(shù)據(jù)擴(kuò)展裝置,其特征在于,所述HashMap類型的屬性包括:屬性唯一鍵和屬性值,所述屬性唯一鍵用于標(biāo)識(shí)所述擴(kuò)展的元數(shù)據(jù)定義的用途,所述屬性值用于標(biāo)識(shí)所述擴(kuò)展的元數(shù)據(jù)定義屬性的值。8.根據(jù)權(quán)利要求7所述的元數(shù)據(jù)擴(kuò)展裝置,其特征在于,所述添加單元包括: 新建單元,用于新建所述擴(kuò)展的元數(shù)據(jù)的屬性表,所述屬性表中的關(guān)鍵字段包括:屬性名稱、所述屬性值、元數(shù)據(jù)類型和元數(shù)據(jù)的具體對(duì)象。9.根據(jù)權(quán)利要求6至8中任一項(xiàng)所述的元數(shù)據(jù)擴(kuò)展裝置,其特征在于,所述保存單元具體用于, 在所述業(yè)務(wù)應(yīng)用處于建模設(shè)計(jì)狀態(tài)或者運(yùn)行狀態(tài)時(shí),將所述擴(kuò)展的元數(shù)據(jù)的所述定義信息保存到所述HashMap類型的屬性中。10.根據(jù)權(quán)利要求6至8中任一項(xiàng)所述的元數(shù)據(jù)擴(kuò)展裝置,其特征在于,還包括: 獲取單元,用于將所述擴(kuò)展的元數(shù)據(jù)的所述定義信息加載到內(nèi)存中,以在所述業(yè)務(wù)應(yīng)用運(yùn)行時(shí)使用所述內(nèi)存中緩存的所述定義信息。
【專利摘要】本發(fā)明提出了一種元數(shù)據(jù)擴(kuò)展方法和元數(shù)據(jù)擴(kuò)展裝置,其中,所述元數(shù)據(jù)擴(kuò)展方法包括:當(dāng)對(duì)業(yè)務(wù)應(yīng)用擴(kuò)展元數(shù)據(jù)時(shí),為擴(kuò)展的元數(shù)據(jù)添加HashMap類型的屬性;將所述擴(kuò)展的元數(shù)據(jù)的定義信息保存到所述HashMap類型的屬性中。通過本發(fā)明的技術(shù)方案,避免了擴(kuò)展的元數(shù)據(jù)影響到其他的業(yè)務(wù)應(yīng)用,以及增強(qiáng)了公共開發(fā)平臺(tái)數(shù)據(jù)建模功能的靈活性和健壯性。
【IPC分類】G06F17/30
【公開號(hào)】CN105631019
【申請(qǐng)?zhí)枴緾N201511017596
【發(fā)明人】田大帥
【申請(qǐng)人】暢捷通信息技術(shù)股份有限公司
【公開日】2016年6月1日
【申請(qǐng)日】2015年12月29日