一種領(lǐng)域?qū)ο竽P偷某志没b置和方法
【專利摘要】本發(fā)明的實(shí)施例提供一種領(lǐng)域?qū)ο竽P偷某志没b置和方法,涉及計(jì)算機(jī)領(lǐng)域。提供一種對領(lǐng)域?qū)ο竽P蛿U(kuò)展屬性進(jìn)行持久化的方式,簡化了對領(lǐng)域?qū)ο竽P蛿U(kuò)展屬性進(jìn)行持久化時(shí)的操作,提高了可行性與實(shí)用性。其方法為:通過獲取領(lǐng)域?qū)ο笠约邦I(lǐng)域?qū)ο髮?yīng)的類定義與擴(kuò)展模型定義,根據(jù)擴(kuò)展模型定義與類定義中的擴(kuò)展屬性容器確定領(lǐng)域?qū)ο笾懈鲾U(kuò)展屬性對應(yīng)的列名與列值,生成擴(kuò)展列信息;進(jìn)一步根據(jù)目標(biāo)數(shù)據(jù)庫類型,確定入庫策略,并結(jié)合該入庫策略將擴(kuò)展列信息發(fā)送至目標(biāo)數(shù)據(jù)庫進(jìn)行存儲。本發(fā)明的實(shí)施例用于對領(lǐng)域?qū)ο竽P偷臄U(kuò)展屬性進(jìn)行持久化。
【專利說明】一種領(lǐng)域?qū)ο竽P偷某志没b置和方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)領(lǐng)域,尤其涉及一種領(lǐng)域?qū)ο竽P偷某志没b置和方法。
【背景技術(shù)】
[0002]數(shù)據(jù)持久化,即把數(shù)據(jù)(如內(nèi)存中的對象)保存到可永久保存的存儲設(shè)備中(如磁盤),主要應(yīng)用是將內(nèi)存中的數(shù)據(jù)存儲在數(shù)據(jù)庫或磁盤文件中、XML數(shù)據(jù)文件中等等;領(lǐng)域?qū)ο竽P?,即領(lǐng)域?qū)ο蟮哪P?,可以被看作是一個(gè)系統(tǒng)的概念模型,用于定義系統(tǒng)中的各個(gè)實(shí)體及其之間的關(guān)系,記錄了一個(gè)系統(tǒng)中的關(guān)鍵概念和詞匯表,并定義了它們各自的屬性。
[0003]目前,領(lǐng)域軟件平臺往往需要為相似領(lǐng)域的不同業(yè)務(wù)軟件系統(tǒng)提供通用的領(lǐng)域能力支撐,以人員管理平臺作為領(lǐng)域軟件平臺為例,可同時(shí)用于支撐圖書館職工管理系統(tǒng)、學(xué)校學(xué)生管理系統(tǒng)等不同的業(yè)務(wù)軟件系統(tǒng)。同時(shí),隨著數(shù)據(jù)庫的應(yīng)用越來越廣泛,各種數(shù)據(jù)持久化框架應(yīng)運(yùn)而生,通過將內(nèi)存中的領(lǐng)域?qū)ο竽P娃D(zhuǎn)換為存儲模型,為領(lǐng)域軟件平臺的開發(fā)帶來了極大的便利;
[0004]在現(xiàn)有技術(shù)應(yīng)用中,領(lǐng)域軟件平臺除了為業(yè)務(wù)軟件系統(tǒng)提供通用領(lǐng)域?qū)ο竽P鸵韵Σ?,同時(shí)需要提供領(lǐng)域?qū)ο竽P蛿U(kuò)展能力,以滿足各不同業(yè)務(wù)軟件系統(tǒng)的領(lǐng)域?qū)ο竽P筒町惢枨蟆H欢?,目前主流的?shù)據(jù)持久化框架只能針對通用領(lǐng)域?qū)ο竽P瓦M(jìn)行持久化,而對于領(lǐng)域?qū)ο竽P蛿U(kuò)展屬性持久化,則需要強(qiáng)迫領(lǐng)域軟件平臺自身進(jìn)行調(diào)整來適應(yīng)不同業(yè)務(wù)軟件系統(tǒng)的差異化要求,造成平臺對業(yè)務(wù)軟件系統(tǒng)的反向依賴,且在一個(gè)領(lǐng)域軟件平臺支撐多個(gè)業(yè)務(wù)軟件系統(tǒng)時(shí),造成擴(kuò)展屬性的沖突和泛濫。這樣,導(dǎo)致業(yè)務(wù)軟件系統(tǒng)對領(lǐng)域?qū)ο竽P偷臄U(kuò)展屬性進(jìn)行持久化時(shí),操作復(fù)雜且可行性、實(shí)用性低。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的實(shí)施例提供一種領(lǐng)域?qū)ο竽P偷某志没b置和方法,使得業(yè)務(wù)軟件系統(tǒng)在對領(lǐng)域?qū)ο竽P瓦M(jìn)行擴(kuò)展時(shí),與領(lǐng)域軟件平臺相對隔離,避免對平臺進(jìn)行調(diào)整,且根據(jù)數(shù)據(jù)庫的類型確定相應(yīng)的入庫策略實(shí)現(xiàn)統(tǒng)一的封裝存儲,以簡化對領(lǐng)域?qū)ο竽P偷臄U(kuò)展屬性進(jìn)行持久化時(shí)的操作,提高可行性與實(shí)用性。
[0006]為達(dá)到上述目的,本發(fā)明的實(shí)施例采用如下技術(shù)方案:
[0007]第一方面,提供一種領(lǐng)域?qū)ο竽P偷某志没b置,所述裝置包括:
[0008]獲取單元,用于獲取領(lǐng)域?qū)ο?、所述領(lǐng)域?qū)ο髮?yīng)的類定義與擴(kuò)展模型定義;
[0009]所述領(lǐng)域?qū)ο蟀ㄖ辽僖粋€(gè)擴(kuò)展屬性;所述類定義包括擴(kuò)展屬性容器,所述擴(kuò)展屬性容器用于承載各所述擴(kuò)展屬性的屬性名與屬性值;擴(kuò)展模型定義用于指示各所述擴(kuò)展屬性的屬性名與數(shù)據(jù)庫表中列名的對應(yīng)關(guān)系;
[0010]處理單元,用于根據(jù)所述獲取單元獲取的所述擴(kuò)展模型定義與所述擴(kuò)展屬性容器,確定各所述擴(kuò)展屬性對應(yīng)的列名與列值,并生成擴(kuò)展列信息,所述擴(kuò)展列信息包括至少一組與所述擴(kuò)展屬性對應(yīng)的所述列名與列值;[0011 ] 入庫單元,用于根據(jù)目標(biāo)數(shù)據(jù)庫類型確定入庫策略,并結(jié)合所述入庫策略,將所述處理單元獲取的所述擴(kuò)展列信息發(fā)送至所述目標(biāo)數(shù)據(jù)庫進(jìn)行存儲。
[0012]結(jié)合第一方面,在第一種可能的實(shí)現(xiàn)方式中,所述領(lǐng)域?qū)ο筮€包括至少一個(gè)基礎(chǔ)屬性;所述類定義包括基礎(chǔ)屬性容器,所述基礎(chǔ)屬性容器用于承載所述基礎(chǔ)屬性的屬性名與屬性值;
[0013]所述獲取單元還用于獲取所述領(lǐng)域?qū)ο髮?yīng)的基礎(chǔ)模型定義;所述基礎(chǔ)模型定義用于指示各所述基礎(chǔ)屬性的屬性名與數(shù)據(jù)庫表中列名的對應(yīng)關(guān)系;
[0014]所述處理單元還用于根據(jù)所述獲取單元獲取的所述基礎(chǔ)模型定義與所述基礎(chǔ)屬性容器,確定各所述基礎(chǔ)屬性對應(yīng)的列名與列值,并生成基礎(chǔ)列信息,所述基礎(chǔ)列信息包括至少一組與所述基礎(chǔ)屬性對應(yīng)的所述列名與列值;
[0015]所述入庫單元還用于結(jié)合所述入庫策略,將所述處理單元獲取的所述基礎(chǔ)列信息發(fā)送至所述目標(biāo)數(shù)據(jù)庫進(jìn)行存儲。
[0016]結(jié)合第一方面,在第二種可能的實(shí)現(xiàn)方式中,所述處理單元具體用于:
[0017]根據(jù)所述擴(kuò)展模型定義指示的各所述擴(kuò)展屬性的屬性名與所述數(shù)據(jù)庫表中列名的對應(yīng)關(guān)系,確定各所述擴(kuò)展屬性對應(yīng)的列名;
[0018]通過所述擴(kuò)展屬性容器獲取各所述列名對應(yīng)的列值,所述列值為通過所述擴(kuò)展屬性容器從所述領(lǐng)域?qū)ο笾蝎@取的與所述屬性名對應(yīng)的所述屬性值。
[0019]結(jié)合第一方面或第一方面的第一種可能的實(shí)現(xiàn)方式,在第三種可能的實(shí)現(xiàn)方式中,所述入庫單元具體用于:
[0020]獲取所述目標(biāo)數(shù)據(jù)庫類型,并根據(jù)所述目標(biāo)數(shù)據(jù)庫類型確定所述入庫策略;所述入庫策略包括:
[0021]使用與所述目標(biāo)數(shù)據(jù)庫類型對應(yīng)的預(yù)設(shè)構(gòu)造算法,根據(jù)所述擴(kuò)展列信息或所述基礎(chǔ)列信息生成入庫消息,所述入庫消息為包括至少一組相互對應(yīng)的列名與列值的數(shù)據(jù)庫語句或指令;
[0022]確定所述目標(biāo)數(shù)據(jù)庫類型對應(yīng)的分類,使用所述分類對應(yīng)的預(yù)設(shè)數(shù)據(jù)庫訪問接口,將生成的所述入庫信息提交至所述目標(biāo)數(shù)據(jù)庫進(jìn)行存儲。
[0023]結(jié)合第一方面的第三種可能的實(shí)現(xiàn)方式,在第四種可能的實(shí)現(xiàn)方式中,所述目標(biāo)數(shù)據(jù)庫類型對應(yīng)的分類包括:關(guān)系型、非關(guān)系型;
[0024]所述入庫單元使用所述分類對應(yīng)的預(yù)設(shè)數(shù)據(jù)庫訪問接口包括:當(dāng)所述分類為關(guān)系型時(shí),使用預(yù)設(shè)關(guān)系型數(shù)據(jù)庫訪問接口 ;或,當(dāng)所述分類為非關(guān)系型時(shí),使用預(yù)設(shè)非關(guān)系型數(shù)據(jù)庫訪問接口。
[0025]第二方面,提供一種領(lǐng)域?qū)ο竽P偷某志没椒ǎ龇椒ò?
[0026]獲取領(lǐng)域?qū)ο?、所述領(lǐng)域?qū)ο髮?yīng)的類定義與擴(kuò)展模型定義;
[0027]所述領(lǐng)域?qū)ο蟀ㄖ辽僖粋€(gè)擴(kuò)展屬性;所述類定義包括擴(kuò)展屬性容器,所述擴(kuò)展屬性容器用于承載各所述擴(kuò)展屬性的屬性名與屬性值;擴(kuò)展模型定義用于指示各所述擴(kuò)展屬性的屬性名與數(shù)據(jù)庫表中列名的對應(yīng)關(guān)系;
[0028]根據(jù)所述擴(kuò)展模型定義與所述擴(kuò)展屬性容器,確定各所述擴(kuò)展屬性對應(yīng)的列名與列值,并生成擴(kuò)展列信息,所述擴(kuò)展列信息包括至少一組與所述擴(kuò)展屬性對應(yīng)的所述列名與列值;[0029]根據(jù)目標(biāo)數(shù)據(jù)庫類型確定入庫策略,并結(jié)合所述入庫策略,將所述擴(kuò)展列信息發(fā)送至所述目標(biāo)數(shù)據(jù)庫進(jìn)行存儲。
[0030]結(jié)合第二方面,在第一種可能的實(shí)現(xiàn)方式中,所述領(lǐng)域?qū)ο筮€包括至少一個(gè)基礎(chǔ)屬性;所述類定義包括基礎(chǔ)屬性容器,所述基礎(chǔ)屬性容器用于承載所述基礎(chǔ)屬性的屬性名與屬性值,所述方法還包括:
[0031]獲取所述領(lǐng)域?qū)ο髮?yīng)的基礎(chǔ)模型定義;所述基礎(chǔ)模型定義用于指示各所述基礎(chǔ)屬性的屬性名與數(shù)據(jù)庫表中列名的對應(yīng)關(guān)系;
[0032]根據(jù)所述基礎(chǔ)模型定義與所述基礎(chǔ)屬性容器,確定各所述基礎(chǔ)屬性對應(yīng)的列名與列值,并生成基礎(chǔ)列信息,所述基礎(chǔ)列信息,包括至少一組與所述基礎(chǔ)屬性對應(yīng)的所述列名與列值;
[0033]結(jié)合所述入庫策略,將所述基礎(chǔ)列信息發(fā)送至所述目標(biāo)數(shù)據(jù)庫進(jìn)行存儲。
[0034]結(jié)合第二方面,在第二種可能的實(shí)現(xiàn)方式中,所述確定各所述擴(kuò)展屬性對應(yīng)的列名與列值,并生成擴(kuò)展列信息包括:
[0035]根據(jù)所述擴(kuò)展模型定義指示的各所述擴(kuò)展屬性的屬性名與所述數(shù)據(jù)庫表中列名的對應(yīng)關(guān)系,確定各所述擴(kuò)展屬性對應(yīng)的列名;
[0036]通過所述擴(kuò)展屬性容器獲取各所述列名對應(yīng)的列值,所述列值為通過所述擴(kuò)展屬性容器從所述領(lǐng)域?qū)ο笾蝎@取的與所述屬性名對應(yīng)的所述屬性值。
[0037]結(jié)合第二方面或第二方面的第一種可能的實(shí)現(xiàn)方式,在第三種可能的實(shí)現(xiàn)方式中,所述入庫策略包括:
[0038]使用與所述目標(biāo)數(shù)據(jù)庫類型對應(yīng)的預(yù)設(shè)構(gòu)造算法,根據(jù)所述擴(kuò)展列信息或所述基礎(chǔ)列信息生成入庫消息,所述入庫消息為包括至少一組相互對應(yīng)的列名與列值的數(shù)據(jù)庫語句或指令;
[0039]確定所述目標(biāo)數(shù)據(jù)庫類型對應(yīng)的分類,使用所述分類對應(yīng)的預(yù)設(shè)數(shù)據(jù)庫訪問接口,將生成的所述入庫信息提交至所述目標(biāo)數(shù)據(jù)庫進(jìn)行存儲。
[0040]結(jié)合第一方面的第三種可能的實(shí)現(xiàn)方式,在第四種可能的實(shí)現(xiàn)方式中,所述目標(biāo)數(shù)據(jù)庫類型對應(yīng)的分類包括:關(guān)系型、非關(guān)系型;
[0041]所述使用所述分類對應(yīng)的預(yù)設(shè)數(shù)據(jù)庫訪問接口包括:當(dāng)所述分類為關(guān)系型時(shí),使用預(yù)設(shè)關(guān)系型數(shù)據(jù)庫訪問接口 ;或,當(dāng)所述分類為非關(guān)系型時(shí),使用預(yù)設(shè)非關(guān)系型數(shù)據(jù)庫訪問接口。
[0042]可見,本發(fā)明的實(shí)施例提供一種領(lǐng)域?qū)ο竽P偷某志没b置和方法,通過獲取領(lǐng)域?qū)ο笠约邦I(lǐng)域?qū)ο髮?yīng)的類定義與擴(kuò)展模型定義,根據(jù)擴(kuò)展模型定義與類定義中的擴(kuò)展屬性容器確定領(lǐng)域?qū)ο笾懈鲾U(kuò)展屬性對應(yīng)的列名與列值,生成擴(kuò)展列信息,進(jìn)一步根據(jù)目標(biāo)數(shù)據(jù)庫類型,確定構(gòu)造策略,并結(jié)合該構(gòu)造策略將擴(kuò)展列信息發(fā)送至目標(biāo)數(shù)據(jù)庫進(jìn)行存儲;這樣,避免了在對領(lǐng)域?qū)ο竽P瓦M(jìn)行擴(kuò)展時(shí)對領(lǐng)域軟件平臺進(jìn)行調(diào)整,且根據(jù)數(shù)據(jù)庫的類型確定相應(yīng)的構(gòu)造策略實(shí)現(xiàn)統(tǒng)一的封裝存儲,簡化了對領(lǐng)域?qū)ο竽P偷臄U(kuò)展屬性進(jìn)行持久化時(shí)的操作,提高了可行性與實(shí)用性。
【專利附圖】
【附圖說明】
[0043]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0044]圖1為本發(fā)明實(shí)施例提供的一種領(lǐng)域?qū)ο竽P偷某志没b置的結(jié)構(gòu)示意圖;
[0045]圖2為本發(fā)明實(shí)施例提供的一種領(lǐng)域?qū)ο竽P偷某志没椒ǖ牧鞒淌疽鈭D;
[0046]圖3為本發(fā)明實(shí)施例提供的一種領(lǐng)域?qū)ο竽P偷某志没b置的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0047]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0048]本發(fā)明的實(shí)施例提供一種領(lǐng)域?qū)ο竽P偷某志没b置00,如圖1所示,該裝置00包括:
[0049]獲取單元001、處理單元002、入庫單元003。
[0050]具體的,該獲取單元001,用于獲取領(lǐng)域?qū)ο蟆㈩I(lǐng)域?qū)ο髮?yīng)的類定義與擴(kuò)展模型定義;該領(lǐng)域?qū)ο蟀ㄖ辽僖粋€(gè)擴(kuò)展屬性,且對應(yīng)的類定義包括擴(kuò)展屬性容器。
[0051]可選的,該獲取單元001獲取的領(lǐng)域?qū)ο筮€可以包括至少一個(gè)基礎(chǔ)屬性,且該領(lǐng)域?qū)ο髮?yīng)的類定義還可以包括基礎(chǔ)屬性容器;該獲取單元001還可以用于獲取基礎(chǔ)模型定義。
[0052]示例性的,獲取單元001可以通過對象接口從業(yè)務(wù)軟件系統(tǒng)獲取領(lǐng)域?qū)ο?;該領(lǐng)域?qū)ο罂梢詾闃I(yè)務(wù)軟件系統(tǒng)自身存儲的,也可以為業(yè)務(wù)軟件系統(tǒng)通過交互接口從客戶系統(tǒng)接收外部輸入獲取的,此處不做限定;該獲取單元001獲取的領(lǐng)域?qū)ο罂梢园ㄒ粋€(gè)或多個(gè)基礎(chǔ)屬性,還可以包括至少一個(gè)擴(kuò)展屬性。
[0053]進(jìn)一步的,以學(xué)校教務(wù)管理軟件系統(tǒng)提供的領(lǐng)域?qū)ο鬄槔?,領(lǐng)域?qū)ο罂梢园ɑA(chǔ)屬性如:學(xué)號(userID)、姓名(UserName)、年齡(UserAge)等,以及其各自對應(yīng)的屬性值:學(xué)號(userID)為“10001”、姓名(userName)為“Joyh”、年齡(userAge)為“25”;還可以包括擴(kuò)展屬性如:性別(userSex)、出生日期(userDate)等,以及其各自對應(yīng)的屬性值:性別(userSex)為“男”、出生日期(userDate)為 “1985 年 I 月 I 日”。
[0054]示例性的,獲取單元001獲取的類定義可以包括一個(gè)或多個(gè)基礎(chǔ)屬性容器,該基礎(chǔ)屬性容器用于承載上述領(lǐng)域?qū)ο蟾骰A(chǔ)屬性的屬性名與屬性值,還可以包括擴(kuò)展屬性容器,該擴(kuò)展屬性容器用于承載上述領(lǐng)域?qū)ο蟾鲾U(kuò)展屬性的屬性名與屬性值;且獲取單元001可以通過自身的類管理器從領(lǐng)域軟件平臺加載與領(lǐng)域?qū)ο笙鄬?yīng)的上述類定義;該類定義可以為領(lǐng)域軟件平臺提供的,且對于不同類型的領(lǐng)域?qū)ο?,存在不同的類定義與之相對應(yīng)。
[0055]值得一提的,上述基礎(chǔ)屬性容器為上述類定義中對領(lǐng)域?qū)ο笾幸粋€(gè)或多個(gè)既定基礎(chǔ)屬性的描述,可以為指定的一個(gè)或多個(gè)變量名、內(nèi)存空間;上述擴(kuò)展屬性容器為類定義中對未定擴(kuò)展屬性預(yù)留的描述,可以為預(yù)設(shè)的接口。且上述基礎(chǔ)屬性容器與擴(kuò)展屬性容器的具體的實(shí)現(xiàn)方式此處不做限定。[0056]進(jìn)一步的,以與上述學(xué)校教務(wù)管理軟件系統(tǒng)提供的領(lǐng)域?qū)ο笙鄬τ诘念惗x為
例,示意如下:
[0057]
【權(quán)利要求】
1.一種領(lǐng)域?qū)ο竽P偷某志没b置,其特征在于,所述裝置包括: 獲取單元,用于獲取領(lǐng)域?qū)ο蟆⑺鲱I(lǐng)域?qū)ο髮?yīng)的類定義與擴(kuò)展模型定義; 所述領(lǐng)域?qū)ο蟀ㄖ辽僖粋€(gè)擴(kuò)展屬性;所述類定義包括擴(kuò)展屬性容器,所述擴(kuò)展屬性容器用于承載各所述擴(kuò)展屬性的屬性名與屬性值;擴(kuò)展模型定義用于指示各所述擴(kuò)展屬性的屬性名與數(shù)據(jù)庫表中列名的對應(yīng)關(guān)系; 處理單元,用于根據(jù)所述獲取單元獲取的所述擴(kuò)展模型定義與所述擴(kuò)展屬性容器,確定各所述擴(kuò)展屬性對應(yīng)的列 名與列值,并生成擴(kuò)展列信息,所述擴(kuò)展列信息包括至少一組與所述擴(kuò)展屬性對應(yīng)的所述列名與列值; 入庫單元,用于根據(jù)目標(biāo)數(shù)據(jù)庫類型確定入庫策略,并結(jié)合所述入庫策略,將所述處理單元獲取的所述擴(kuò)展列信息發(fā)送至所述目標(biāo)數(shù)據(jù)庫進(jìn)行存儲。
2.根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述領(lǐng)域?qū)ο筮€包括至少一個(gè)基礎(chǔ)屬性;所述類定義包括基礎(chǔ)屬性容器,所述基礎(chǔ)屬性容器用于承載所述基礎(chǔ)屬性的屬性名與屬性值; 所述獲取單元還用于獲取所述領(lǐng)域?qū)ο髮?yīng)的基礎(chǔ)模型定義;所述基礎(chǔ)模型定義用于指示各所述基礎(chǔ)屬性的屬性名與數(shù)據(jù)庫表中列名的對應(yīng)關(guān)系; 所述處理單元還用于根據(jù)所述獲取單元獲取的所述基礎(chǔ)模型定義與所述基礎(chǔ)屬性容器,確定各所述基礎(chǔ)屬性對應(yīng)的列名與列值,并生成基礎(chǔ)列信息,所述基礎(chǔ)列信息包括至少一組與所述基礎(chǔ)屬性對應(yīng)的所述列名與列值; 所述入庫單元還用于結(jié)合所述入庫策略,將所述處理單元獲取的所述基礎(chǔ)列信息發(fā)送至所述目標(biāo)數(shù)據(jù)庫進(jìn)行存儲。
3.根據(jù)權(quán)利要求1所述的裝置,其特征在于,所述處理單元具體用于: 根據(jù)所述擴(kuò)展模型定義指示的各所述擴(kuò)展屬性的屬性名與所述數(shù)據(jù)庫表中列名的對應(yīng)關(guān)系,確定各所述擴(kuò)展屬性對應(yīng)的列名; 通過所述擴(kuò)展屬性容器獲取各所述列名對應(yīng)的列值,所述列值為通過所述擴(kuò)展屬性容器從所述領(lǐng)域?qū)ο笾蝎@取的與所述屬性名對應(yīng)的所述屬性值。
4.根據(jù)權(quán)利要求1或2所述的裝置,其特征在于,所述入庫單元具體用于: 獲取所述目標(biāo)數(shù)據(jù)庫類型,并根據(jù)所述目標(biāo)數(shù)據(jù)庫類型確定所述入庫策略;所述入庫策略包括: 使用與所述目標(biāo)數(shù)據(jù)庫類型對應(yīng)的預(yù)設(shè)構(gòu)造算法,根據(jù)所述擴(kuò)展列信息或所述基礎(chǔ)列信息生成入庫消息,所述入庫消息為包括至少一組相互對應(yīng)的列名與列值的數(shù)據(jù)庫語句或指令; 確定所述目標(biāo)數(shù)據(jù)庫類型對應(yīng)的分類,使用所述分類對應(yīng)的預(yù)設(shè)數(shù)據(jù)庫訪問接口,將生成的所述入庫信息提交至所述目標(biāo)數(shù)據(jù)庫進(jìn)行存儲。
5.根據(jù)權(quán)利要求4所述的裝置,其特征在于, 所述目標(biāo)數(shù)據(jù)庫類型對應(yīng)的分類包括:關(guān)系型、非關(guān)系型; 所述入庫單元使用所述分類對應(yīng)的預(yù)設(shè)數(shù)據(jù)庫訪問接口包括:當(dāng)所述分類為關(guān)系型時(shí),使用預(yù)設(shè)關(guān)系型數(shù)據(jù)庫訪問接口 ;或,當(dāng)所述分類為非關(guān)系型時(shí),使用預(yù)設(shè)非關(guān)系型數(shù)據(jù)庫訪問接口。
6.一種領(lǐng)域?qū)ο竽P偷某志没椒?,其特征在于,所述方法包?獲取領(lǐng)域?qū)ο?、所述領(lǐng)域?qū)ο髮?yīng)的類定義與擴(kuò)展模型定義; 所述領(lǐng)域?qū)ο蟀ㄖ辽僖粋€(gè)擴(kuò)展屬性;所述類定義包括擴(kuò)展屬性容器,所述擴(kuò)展屬性容器用于承載各所述擴(kuò)展屬性的屬性名與屬性值;擴(kuò)展模型定義用于指示各所述擴(kuò)展屬性的屬性名與數(shù)據(jù)庫表中列名的對應(yīng)關(guān)系; 根據(jù)所述擴(kuò)展模型定義與所述擴(kuò)展屬性容器,確定各所述擴(kuò)展屬性對應(yīng)的列名與列值,并生成擴(kuò)展列信息,所述擴(kuò)展列信息包括至少一組與所述擴(kuò)展屬性對應(yīng)的所述列名與列值; 根據(jù)目標(biāo)數(shù)據(jù)庫類型確定入庫策略,并結(jié)合所述入庫策略,將所述擴(kuò)展列信息發(fā)送至所述目標(biāo)數(shù)據(jù)庫進(jìn)行存儲。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述領(lǐng)域?qū)ο筮€包括至少一個(gè)基礎(chǔ)屬性;所述類定義包括基礎(chǔ)屬性容器,所述基礎(chǔ)屬性容器用于承載所述基礎(chǔ)屬性的屬性名與屬性值,所述方法還包括: 獲取所述領(lǐng)域?qū)ο髮?yīng)的基礎(chǔ)模型定義;所述基礎(chǔ)模型定義用于指示各所述基礎(chǔ)屬性的屬性名與數(shù)據(jù)庫表中列名的對應(yīng)關(guān)系; 根據(jù)所述基礎(chǔ)模型定義與所述基礎(chǔ)屬性容器,確定各所述基礎(chǔ)屬性對應(yīng)的列名與列值,并生成基礎(chǔ)列信息,所述基礎(chǔ)列信息,包括至少一組與所述基礎(chǔ)屬性對應(yīng)的所述列名與列值; 結(jié)合所述入庫策略 ,將所述基礎(chǔ)列信息發(fā)送至所述目標(biāo)數(shù)據(jù)庫進(jìn)行存儲。
8.根據(jù)權(quán)利要求6所述的方法,其特征在于,所述確定各所述擴(kuò)展屬性對應(yīng)的列名與列值,并生成擴(kuò)展列信息包括: 根據(jù)所述擴(kuò)展模型定義指示的各所述擴(kuò)展屬性的屬性名與所述數(shù)據(jù)庫表中列名的對應(yīng)關(guān)系,確定各所述擴(kuò)展屬性對應(yīng)的列名; 通過所述擴(kuò)展屬性容器獲取各所述列名對應(yīng)的列值,所述列值為通過所述擴(kuò)展屬性容器從所述領(lǐng)域?qū)ο笾蝎@取的與所述屬性名對應(yīng)的所述屬性值。
9.根據(jù)權(quán)利要求6或7所述的方法,其特征在于,所述入庫策略包括: 使用與所述目標(biāo)數(shù)據(jù)庫類型對應(yīng)的預(yù)設(shè)構(gòu)造算法,根據(jù)所述擴(kuò)展列信息或所述基礎(chǔ)列信息生成入庫消息,所述入庫消息為包括至少一組相互對應(yīng)的列名與列值的數(shù)據(jù)庫語句或指令; 確定所述目標(biāo)數(shù)據(jù)庫類型對應(yīng)的分類,使用所述分類對應(yīng)的預(yù)設(shè)數(shù)據(jù)庫訪問接口,將生成的所述入庫信息提交至所述目標(biāo)數(shù)據(jù)庫進(jìn)行存儲。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于, 所述目標(biāo)數(shù)據(jù)庫類型對應(yīng)的分類包括:關(guān)系型、非關(guān)系型; 所述使用所述分類對應(yīng)的預(yù)設(shè)數(shù)據(jù)庫訪問接口包括:當(dāng)所述分類為關(guān)系型時(shí),使用預(yù)設(shè)關(guān)系型數(shù)據(jù)庫訪問接口 ;或,當(dāng)所述分類為非關(guān)系型時(shí),使用預(yù)設(shè)非關(guān)系型數(shù)據(jù)庫訪問接□。
【文檔編號】G06F9/44GK103955370SQ201410175905
【公開日】2014年7月30日 申請日期:2014年4月28日 優(yōu)先權(quán)日:2014年4月28日
【發(fā)明者】尹晨輝 申請人:華為軟件技術(shù)有限公司