亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的方法及裝置、數(shù)據(jù)轉(zhuǎn)換方法及系統(tǒng)的制作方法

文檔序號(hào):6526147閱讀:848來(lái)源:國(guó)知局
實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的方法及裝置、數(shù)據(jù)轉(zhuǎn)換方法及系統(tǒng)的制作方法
【專(zhuān)利摘要】本發(fā)明公開(kāi)一種實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的方法,包括如下步驟:S101、將需要進(jìn)行國(guó)際化的具體語(yǔ)言寫(xiě)入數(shù)據(jù)庫(kù)初始化配置文件;S102、將初始化配置文件中的原初始化SQL語(yǔ)句中的具體語(yǔ)言用臨時(shí)變量來(lái)代替得到初始化SQL腳本;S103、生成各種語(yǔ)言的對(duì)應(yīng)語(yǔ)言包,語(yǔ)言包中包含臨時(shí)變量與具體語(yǔ)言的映射關(guān)系,然后采用摘要算法從語(yǔ)言包中生成與臨時(shí)變量對(duì)應(yīng)的國(guó)際化變量,并在語(yǔ)言包中建立國(guó)際化變量與具體語(yǔ)言的映射關(guān)系;S104、根據(jù)初始化配置文件進(jìn)行初始化,將初始化SQL腳本中的臨時(shí)變量用國(guó)際化變量替換。本發(fā)明還公開(kāi)一種實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的裝置、數(shù)據(jù)轉(zhuǎn)換方法及系統(tǒng)。
【專(zhuān)利說(shuō)明】實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的方法及裝置、數(shù)據(jù)轉(zhuǎn)換方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的方法及裝置、數(shù)據(jù)轉(zhuǎn)換方法及系統(tǒng)。
【背景技術(shù)】
[0002]現(xiàn)有的國(guó)際化數(shù)據(jù)庫(kù)方案通常是通過(guò)將不同的語(yǔ)言進(jìn)行分表或分字段來(lái)實(shí)現(xiàn),這樣的方式存在的問(wèn)題有:
[0003]1、同一系統(tǒng)在不同語(yǔ)言環(huán)境下顯示所有數(shù)據(jù)就需要對(duì)所有的子表和子字段進(jìn)行查詢(xún)才能得到;
[0004]2、數(shù)據(jù)表或字段增加造成操作和管理的復(fù)雜化;
[0005]3、增加新語(yǔ)言需要對(duì)與國(guó)際化相關(guān)的表增加新的子表或子字段來(lái)解決。

【發(fā)明內(nèi)容】

[0006]為解決上述拘束問(wèn)題,本發(fā)明采用的一個(gè)技術(shù)方案是:
[0007]提供一種實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的方法,包括如下步驟:S101、將需要進(jìn)行國(guó)際化的具體語(yǔ)言寫(xiě)入數(shù)據(jù)庫(kù)初始化配置文件,初始化配置文件中包含具有具體語(yǔ)言的原初始化SQL語(yǔ)句;S102、將初始化配置文件中的原初始化SQL語(yǔ)句中的具體語(yǔ)言用臨時(shí)變量來(lái)代替得到初始化SQL腳本;S103、生成各種語(yǔ)言的對(duì)應(yīng)語(yǔ)言包,語(yǔ)言包中包含臨時(shí)變量與具體語(yǔ)言的映射關(guān)系,然后采用摘要算法從語(yǔ)言包中生成與臨時(shí)變量對(duì)應(yīng)的國(guó)際化變量,并在語(yǔ)言包中建立國(guó)際化變量與具體語(yǔ)言的映射關(guān)系;S104、根據(jù)初始化配置文件進(jìn)行初始化,將初始化SQL腳本中的臨時(shí)變量用國(guó)際化變量替換。
[0008]本發(fā)明采用的另一個(gè)技術(shù)方案是:
[0009]提供一種實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的裝置,包括:寫(xiě)入模塊,用于將需要進(jìn)行國(guó)際化的具體語(yǔ)言寫(xiě)入數(shù)據(jù)庫(kù)初始化配置文件,初始化配置文件中包含具有具體語(yǔ)言的原初始化SQL語(yǔ)句;腳本生成模塊,用于將初始化配置文件中的原初始化SQL語(yǔ)句中的具體語(yǔ)言用臨時(shí)變量來(lái)代替得到初始化SQL腳本;語(yǔ)言包生成模塊,用于生成各種語(yǔ)言的對(duì)應(yīng)語(yǔ)言包,語(yǔ)言包中包含臨時(shí)變量與具體語(yǔ)言的映射關(guān)系,然后采用摘要算法從語(yǔ)言包中生成與臨時(shí)變量對(duì)應(yīng)的國(guó)際化變量,并在語(yǔ)言包中建立國(guó)際化變量與具體語(yǔ)言的映射關(guān)系;初始化模塊,用于根據(jù)初始化配置文件進(jìn)行初始化,將初始化SQL腳本中的臨時(shí)變量用國(guó)際化變量替換。
[0010]本發(fā)明采用的再一個(gè)技術(shù)方案是:
[0011]提供一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換方法,包括如下步驟:S201、服務(wù)器端查詢(xún)數(shù)據(jù)庫(kù)讀取所有語(yǔ)言包并將語(yǔ)言包在內(nèi)存中進(jìn)行緩存,語(yǔ)言包中包含國(guó)際化變量與具體語(yǔ)言的映射關(guān)系;S202、當(dāng)服務(wù)器端接收到瀏覽器端發(fā)送的獲取數(shù)據(jù)請(qǐng)求時(shí),讀取緩存的與瀏覽器端預(yù)設(shè)語(yǔ)言對(duì)應(yīng)的語(yǔ)言包,將數(shù)據(jù)中的國(guó)際化變量替換為對(duì)應(yīng)預(yù)設(shè)語(yǔ)言的具體語(yǔ)言,同時(shí)將數(shù)據(jù)JSON序列化后,發(fā)送至所述瀏覽器端;S203、瀏覽器端解析JSON序列得到數(shù)據(jù)。
[0012]本發(fā)明采用的再一個(gè)技術(shù)方案是:
[0013]提供一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換系統(tǒng),包括服務(wù)器端以及與服務(wù)器端通信連接的瀏覽器端,所述服務(wù)器端包括:緩存模塊,用于查詢(xún)數(shù)據(jù)庫(kù)讀取所有語(yǔ)言包并將語(yǔ)言包在內(nèi)存中進(jìn)行緩存,語(yǔ)言包中包含國(guó)際化變量與具體語(yǔ)言的映射關(guān)系;替換模塊,用于當(dāng)服務(wù)器端接收到瀏覽器端發(fā)送的獲取數(shù)據(jù)請(qǐng)求時(shí),讀取緩存的與瀏覽器端預(yù)設(shè)語(yǔ)言對(duì)應(yīng)的語(yǔ)言包,將數(shù)據(jù)中的國(guó)際化變量替換為對(duì)應(yīng)預(yù)設(shè)語(yǔ)言的具體語(yǔ)言,同時(shí)將數(shù)據(jù)JSON序列化后,發(fā)送至所述瀏覽器端;所述瀏覽器端用于解析JSON序列得到數(shù)據(jù)。
[0014]本發(fā)明的本發(fā)明的有益效果在于:提供一種實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的方法及裝置、數(shù)據(jù)轉(zhuǎn)換方法及系統(tǒng),在數(shù)據(jù)庫(kù)中僅僅保存了國(guó)際化變量,國(guó)際化操作在返回瀏覽器端JSON時(shí)進(jìn)行處理,因此國(guó)際化與數(shù)據(jù)庫(kù)表結(jié)構(gòu)無(wú)關(guān),在此轉(zhuǎn)換過(guò)程中同時(shí)將數(shù)據(jù)中的國(guó)際化變量替換為對(duì)應(yīng)語(yǔ)言的內(nèi)容,轉(zhuǎn)換的同時(shí)也進(jìn)行了國(guó)際化,因此替換過(guò)程不會(huì)產(chǎn)生大量新字符串對(duì)象,以保持高效率且不影響業(yè)務(wù)實(shí)現(xiàn)。無(wú)需進(jìn)行復(fù)雜的表結(jié)構(gòu)維護(hù),增加和修改語(yǔ)言時(shí)僅僅增加或修改語(yǔ)言包即可,無(wú)需像現(xiàn)有技術(shù)的方案在數(shù)據(jù)庫(kù)中為每個(gè)需要國(guó)際化的語(yǔ)言增加每種語(yǔ)言的字段或?yàn)槊糠N語(yǔ)言建立子表,可擴(kuò)展性好。
【專(zhuān)利附圖】

【附圖說(shuō)明】
[0015]圖1是本發(fā)明一實(shí)施方式中一種實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的方法的執(zhí)行流程圖;
[0016]圖2是本發(fā)明一實(shí)施方式中一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換方法的執(zhí)行流程圖;
[0017]圖3是圖2中步驟S2022的執(zhí)行流程圖;
[0018]圖4是更新數(shù)據(jù)庫(kù)的執(zhí)行流程圖;
[0019]圖5是本發(fā)明一實(shí)施方式中一種實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的裝置的功能模塊圖;
[0020]圖6是本發(fā)明一實(shí)施方式中一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換系統(tǒng)的系統(tǒng)框圖。
【具體實(shí)施方式】
[0021]為詳細(xì)說(shuō)明本發(fā)明的技術(shù)內(nèi)容、構(gòu)造特征、所實(shí)現(xiàn)目的及效果,以下結(jié)合實(shí)施方式并配合附圖詳予說(shuō)明。
[0022]請(qǐng)參閱圖1,是本發(fā)明一實(shí)施方式中一種實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的方法的執(zhí)行流程圖,包括如下步驟:
[0023]步驟S101、將需要進(jìn)行國(guó)際化的具體語(yǔ)言寫(xiě)入數(shù)據(jù)庫(kù)初始化配置文件,初始化配置文件中包含具有具體語(yǔ)言的原初始化SQL語(yǔ)句。
[0024]步驟S102、將初始化配置文件中的原初始化SQL語(yǔ)句中的具體語(yǔ)言用臨時(shí)變量來(lái)代替得到初始化SQL腳本。
[0025]例如:
[0026]insert into CONF (NAME, COMMENTS) values (’license’,’ 授權(quán)用戶(hù)信息’);
[0027]其中具體語(yǔ)言“授權(quán)用戶(hù)信息”用臨時(shí)變量名“${licenSeinf0} ”取代:
[0028]insert into CONF (NAME, COMMENTS) values (,license,,,$ {Iicenseinfo},)。
[0029]步驟S103、生成各種語(yǔ)言的對(duì)應(yīng)語(yǔ)言包,語(yǔ)言包中包含臨時(shí)變量與具體語(yǔ)言的映射關(guān)系,然后采用摘要算法從語(yǔ)言包中生成與臨時(shí)變量對(duì)應(yīng)的國(guó)際化變量,并在語(yǔ)言包中建立國(guó)際化變量與具體語(yǔ)言的映射關(guān)系。
[0030]例如:[0031]英文:Iicenseinfo=Licence Infomation
[0032]中文:licenseinfo=授權(quán)用戶(hù)信息
[0033]繁體中文:licenseinfo=授權(quán)用戶(hù)信息
[0034]步驟S104、根據(jù)初始化配置文件進(jìn)行初始化,將初始化SQL腳本中的臨時(shí)變量用
國(guó)際化變量替換。
[0035]請(qǐng)參閱圖2,是本發(fā)明一實(shí)施方式中一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換方法的執(zhí)行流程圖。該國(guó)際化數(shù)據(jù)庫(kù)由上述實(shí)現(xiàn)方法開(kāi)發(fā)得到。該基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換方法具體包括如下步驟:
[0036]步驟S201、服務(wù)器端查詢(xún)數(shù)據(jù)庫(kù)讀取所有語(yǔ)言包并將語(yǔ)言包在內(nèi)存中進(jìn)行緩存,語(yǔ)言包中包含國(guó)際化變量與具體語(yǔ)言的映射關(guān)系;
[0037]步驟S202、當(dāng)服務(wù)器端接收到瀏覽器端發(fā)送的獲取數(shù)據(jù)請(qǐng)求時(shí),讀取緩存的與瀏覽器端預(yù)設(shè)語(yǔ)言對(duì)應(yīng)的語(yǔ)言包,將數(shù)據(jù)中的國(guó)際化變量替換為對(duì)應(yīng)預(yù)設(shè)語(yǔ)言的具體語(yǔ)言,同時(shí)將數(shù)據(jù)JSON序列化后,發(fā)送至所述瀏覽器端。由于國(guó)際化操作采用了緩存且在JSON序列化過(guò)程中完成,國(guó)際化的效率較高。
[0038]步驟S203、瀏覽器端解析JSON序列得到數(shù)據(jù)。
[0039]請(qǐng)參閱圖3,是圖2中步驟S2022的執(zhí)行流程圖。其中,所述數(shù)據(jù)包含數(shù)值、布爾型、字符串,所述步驟S2022具體包括:
[0040]步驟S2021、當(dāng)服務(wù)器端接收到瀏覽器端發(fā)送的獲取數(shù)據(jù)請(qǐng)求時(shí),判斷數(shù)據(jù)中的字段類(lèi)型是否為字符串,若是,進(jìn)入步驟S2022,
[0041]步驟S2022、判斷該字段是否為國(guó)際化變量,若是,進(jìn)入步驟S2023,若否,則進(jìn)入步驟S2024直接將原字段返回至所述瀏覽器端;
[0042]步驟S2023、讀取緩存的與瀏覽器端預(yù)設(shè)語(yǔ)言對(duì)應(yīng)的語(yǔ)言包,將數(shù)據(jù)中的國(guó)際化變量替換為對(duì)應(yīng)預(yù)設(shè)語(yǔ)言的具體語(yǔ)言,同時(shí)將數(shù)據(jù)JSON序列化后,發(fā)送至所述瀏覽器端。
[0043]請(qǐng)參閱圖4,是更新數(shù)據(jù)庫(kù)的執(zhí)行流程圖。其中,所述的一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換方法還包括更新數(shù)據(jù)庫(kù)步驟,具體包括:
[0044]步驟S301、在數(shù)據(jù)庫(kù)操作前,開(kāi)啟AOP切面編程方式的程序功能維護(hù);
[0045]步驟S302、進(jìn)行數(shù)據(jù)庫(kù)操作時(shí),判斷更新字段是否涉及國(guó)際化變量;
[0046]步驟S303、當(dāng)判定更新字段設(shè)計(jì)國(guó)際化變量時(shí),取消對(duì)包含國(guó)際化變量的字段的更新。
[0047]由于采用了 AOP方式來(lái)保護(hù)國(guó)際化變量不被修改,此過(guò)程與業(yè)務(wù)分離,統(tǒng)一地?cái)r截到數(shù)據(jù)庫(kù)的更新操作,阻止對(duì)含有國(guó)際化變量的字段的修改操作。
[0048]請(qǐng)參閱圖5,是本發(fā)明一實(shí)施方式中一種實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的裝置的功能模塊圖。所述一種實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的方法應(yīng)用于該實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的裝置中。該實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的裝置包括寫(xiě)入模塊、腳本生成模塊、語(yǔ)言包生成模塊、初始化模塊。
[0049]寫(xiě)入模塊用于將需要進(jìn)行國(guó)際化的具體語(yǔ)言寫(xiě)入數(shù)據(jù)庫(kù)初始化配置文件,初始化配置文件中包含具有具體語(yǔ)言的原初始化SQL語(yǔ)句。腳本生成模塊用于將初始化配置文件中的原初始化SQL語(yǔ)句中的具體語(yǔ)言用臨時(shí)變量來(lái)代替得到初始化SQL腳本。語(yǔ)言包生成模塊用于生成各種語(yǔ)言的對(duì)應(yīng)語(yǔ)言包,語(yǔ)言包中包含臨時(shí)變量與具體語(yǔ)言的映射關(guān)系,然后采用摘要算法從語(yǔ)言包中生成與臨時(shí)變量對(duì)應(yīng)的國(guó)際化變量,并在語(yǔ)言包中建立國(guó)際化變量與具體語(yǔ)言的映射關(guān)系。初始化模塊用于根據(jù)初始化配置文件進(jìn)行初始化,將初始化SQL腳本中的臨時(shí)變量用國(guó)際化變量替換。
[0050]請(qǐng)參閱圖6,是本發(fā)明一實(shí)施方式中一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換系統(tǒng)的系統(tǒng)框圖。所述的一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換方法應(yīng)用于該基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換系統(tǒng)中。
[0051]該基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換系統(tǒng)包括服務(wù)器端以及與服務(wù)器端通信連接的瀏覽器端,所述服務(wù)器端包括數(shù)據(jù)庫(kù)、緩存模塊、替換模塊。緩存模塊用于查詢(xún)數(shù)據(jù)庫(kù)讀取所有語(yǔ)言包并將語(yǔ)言包在內(nèi)存中進(jìn)行緩存,語(yǔ)言包中包含國(guó)際化變量與具體語(yǔ)言的映射關(guān)系。替換模塊用于當(dāng)服務(wù)器端接收到瀏覽器端發(fā)送的獲取數(shù)據(jù)請(qǐng)求時(shí),讀取緩存的與瀏覽器端預(yù)設(shè)語(yǔ)言對(duì)應(yīng)的語(yǔ)言包,將數(shù)據(jù)中的國(guó)際化變量替換為對(duì)應(yīng)預(yù)設(shè)語(yǔ)言的具體語(yǔ)言,同時(shí)將數(shù)據(jù)JSON序列化后,發(fā)送至所述瀏覽器端。所述瀏覽器端用于解析JSON序列得到數(shù)據(jù)。
[0052]其中,所述數(shù)據(jù)包含數(shù)值、布爾型、字符串,所述替換模塊具體包括第一判斷子模塊、第二判斷子模塊、序列化子模塊、原字段返回子模塊。第一判斷子模塊用于當(dāng)服務(wù)器端接收到瀏覽器端發(fā)送的獲取數(shù)據(jù)請(qǐng)求時(shí),判斷數(shù)據(jù)中的字段類(lèi)型是否為字符串。第二判斷子模塊用于當(dāng)?shù)谝慌袛嘧幽K判定是字符串時(shí),判斷該字段是否為國(guó)際化變量。序列化子模塊用于當(dāng)?shù)诙袛嘧幽K判斷字段是國(guó)際化變量時(shí),讀取緩存的與瀏覽器端預(yù)設(shè)語(yǔ)言對(duì)應(yīng)的語(yǔ)言包,將數(shù)據(jù)中的國(guó)際化變量替換為對(duì)應(yīng)預(yù)設(shè)語(yǔ)言的具體語(yǔ)言,同時(shí)將數(shù)據(jù)JSON序列化后,發(fā)送至所述瀏覽器端。原字段返回子模塊用于當(dāng)?shù)诙袛嘧幽K判斷字段不是國(guó)際化變量時(shí),直接將原字段內(nèi)容返回至所述瀏覽器端。
[0053]其中,所述的一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換系統(tǒng)還包括更新數(shù)據(jù)庫(kù)模塊,該更新數(shù)據(jù)庫(kù)模塊具體包括AOP執(zhí)行子模塊、第三判斷子模塊、攔截子模塊。AOP執(zhí)行子模塊用于在數(shù)據(jù)庫(kù)操作前,開(kāi)啟AOP切面編程方式的程序功能維護(hù)。第三判斷子模塊用于進(jìn)行數(shù)據(jù)庫(kù)操作時(shí),判斷更新字段是否涉及國(guó)際化變量。攔截子模塊用于當(dāng)?shù)谌袛嘧幽K判定更新字段設(shè)計(jì)國(guó)際化變量時(shí),取消對(duì)包含國(guó)際化變量的字段的更新。
[0054]本發(fā)明的實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的方法及裝置、數(shù)據(jù)轉(zhuǎn)換方法及系統(tǒng),在數(shù)據(jù)庫(kù)中僅僅保存了國(guó)際化變量,國(guó)際化操作在返回瀏覽器端JSON時(shí)進(jìn)行處理,因此國(guó)際化與數(shù)據(jù)庫(kù)表結(jié)構(gòu)無(wú)關(guān),在此轉(zhuǎn)換過(guò)程中同時(shí)將數(shù)據(jù)中的國(guó)際化變量替換為對(duì)應(yīng)語(yǔ)言的內(nèi)容,轉(zhuǎn)換的同時(shí)也進(jìn)行了國(guó)際化,因此替換過(guò)程不會(huì)產(chǎn)生大量新字符串對(duì)象,以保持高效率且不影響業(yè)務(wù)實(shí)現(xiàn)。無(wú)需進(jìn)行復(fù)雜的表結(jié)構(gòu)維護(hù),增加和修改語(yǔ)言時(shí)僅僅增加或修改語(yǔ)言包即可,無(wú)需像現(xiàn)有技術(shù)的方案在數(shù)據(jù)庫(kù)中為每個(gè)需要國(guó)際化的語(yǔ)言增加每種語(yǔ)言的字段或?yàn)槊糠N語(yǔ)言建立子表,可擴(kuò)展性好。
[0055]以上所述僅為本發(fā)明的實(shí)施例,并非因此限制本發(fā)明的專(zhuān)利范圍,凡是利用本發(fā)明說(shuō)明書(shū)及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的【技術(shù)領(lǐng)域】,均同理包括在本發(fā)明的專(zhuān)利保護(hù)范圍內(nèi)。
【權(quán)利要求】
1.一種實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的方法,其特征在于,包括如下步驟: 5101、將需要進(jìn)行國(guó)際化的具體語(yǔ)言寫(xiě)入數(shù)據(jù)庫(kù)初始化配置文件,初始化配置文件中包含具有具體語(yǔ)言的原初始化SQL語(yǔ)句; 5102、將初始化配置文件中的原初始化SQL語(yǔ)句中的具體語(yǔ)言用臨時(shí)變量來(lái)代替得到初始化SQL腳本; 5103、生成各種語(yǔ)言的對(duì)應(yīng)語(yǔ)言包,語(yǔ)言包中包含臨時(shí)變量與具體語(yǔ)言的映射關(guān)系,然后采用摘要算法從語(yǔ)言包中生成與臨時(shí)變量對(duì)應(yīng)的國(guó)際化變量,并在語(yǔ)言包中建立國(guó)際化變量與具體語(yǔ)言的映射關(guān)系; 5104、根據(jù)初始化配置文件進(jìn)行初始化,將初始化SQL腳本中的臨時(shí)變量用國(guó)際化變量替換。
2.一種實(shí)現(xiàn)數(shù)據(jù)庫(kù)國(guó)際化的裝置,其特征在于,包括: 寫(xiě)入模塊,用于將需要進(jìn)行國(guó)際化的具體語(yǔ)言寫(xiě)入數(shù)據(jù)庫(kù)初始化配置文件,初始化配置文件中包含具有具體語(yǔ)言的原初始化SQL語(yǔ)句; 腳本生成模塊,用于將初始化配置文件中的原初始化SQL語(yǔ)句中的具體語(yǔ)言用臨時(shí)變量來(lái)代替得到初始化SQL腳本; 語(yǔ)言包生成模塊,用于生成各種語(yǔ)言的對(duì)應(yīng)語(yǔ)言包,語(yǔ)言包中包含臨時(shí)變量與具體語(yǔ)言的映射關(guān)系,然后采用摘要算法從語(yǔ)言包中生成與臨時(shí)變量對(duì)應(yīng)的國(guó)際化變量,并在語(yǔ)言包中建立國(guó)際化變量與具體語(yǔ)言的映射關(guān)系; 初始化模塊,用于根據(jù)初始化配置文件進(jìn)`行初始化,將初始化SQL腳本中的臨時(shí)變量用國(guó)際化變量替換。
3.一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換方法,其特征在于,包括如下步驟: 5201、服務(wù)器端查詢(xún)數(shù)據(jù)庫(kù)讀取所有語(yǔ)言包并將語(yǔ)言包在內(nèi)存中進(jìn)行緩存,語(yǔ)言包中包含國(guó)際化變量與具體語(yǔ)言的映射關(guān)系; 5202、當(dāng)服務(wù)器端接收到瀏覽器端發(fā)送的獲取數(shù)據(jù)請(qǐng)求時(shí),讀取緩存的與瀏覽器端預(yù)設(shè)語(yǔ)言對(duì)應(yīng)的語(yǔ)言包,將數(shù)據(jù)中的國(guó)際化變量替換為對(duì)應(yīng)預(yù)設(shè)語(yǔ)言的具體語(yǔ)言,同時(shí)將數(shù)據(jù)JSON序列化后,發(fā)送至所述瀏覽器端; 5203、瀏覽器端解析JSON序列得到數(shù)據(jù)。
4.根據(jù)權(quán)利要求3所述的一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換方法,其特征在于,所述數(shù)據(jù)包含數(shù)值、布爾型、字符串,所述步驟S2022具體包括: 52021、當(dāng)服務(wù)器端接收到瀏覽器端發(fā)送的獲取數(shù)據(jù)請(qǐng)求時(shí),判斷數(shù)據(jù)中的字段類(lèi)型是否為字符串,若是,進(jìn)入步驟S2022, 52022、判斷該字段是否為國(guó)際化變量,若是,進(jìn)入步驟S2023,若否,則直接將原字段返回至所述瀏覽器端; 52023、讀取緩存的與瀏覽器端預(yù)設(shè)語(yǔ)言對(duì)應(yīng)的語(yǔ)言包,將數(shù)據(jù)中的國(guó)際化變量替換為對(duì)應(yīng)預(yù)設(shè)語(yǔ)言的具體語(yǔ)言,同時(shí)將數(shù)據(jù)JSON序列化后,發(fā)送至所述瀏覽器端。
5.根據(jù)權(quán)利要求3-4任意一項(xiàng)所述的一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換方法,其特征在于,還包括更新數(shù)據(jù)庫(kù)步驟,具體包括: 在數(shù)據(jù)庫(kù)操作前,開(kāi)啟AOP切面編程方式的程序功能維護(hù); 進(jìn)行數(shù)據(jù)庫(kù)操作時(shí),判斷更新字段是否涉及國(guó)際化變量;當(dāng)判定更新字段設(shè)計(jì)國(guó)際化變量時(shí),取消對(duì)包含國(guó)際化變量的字段的更新。
6.一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換系統(tǒng),包括服務(wù)器端以及與服務(wù)器端通信連接的瀏覽器端,其特征在于,所述服務(wù)器端包括: 緩存模塊,用于查詢(xún)數(shù)據(jù)庫(kù)讀取所有語(yǔ)言包并將語(yǔ)言包在內(nèi)存中進(jìn)行緩存,語(yǔ)言包中包含國(guó)際化變量與具體語(yǔ)言的映射關(guān)系; 替換模塊,用于當(dāng)服務(wù)器端接收到瀏覽器端發(fā)送的獲取數(shù)據(jù)請(qǐng)求時(shí),讀取緩存的與瀏覽器端預(yù)設(shè)語(yǔ)言對(duì)應(yīng)的語(yǔ)言包,將數(shù)據(jù)中的國(guó)際化變量替換為對(duì)應(yīng)預(yù)設(shè)語(yǔ)言的具體語(yǔ)言,同時(shí)將數(shù)據(jù)JSON序列化后,發(fā)送至所述瀏覽器端; 所述瀏覽器端用于解析JSON序列得到數(shù)據(jù)。
7.根據(jù)權(quán)利要求6所述的一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換系統(tǒng),其特征在于,所述數(shù)據(jù)包含數(shù)值、布爾型、字符串,所述替換模塊具體包括: 第一判斷子模塊,用于當(dāng)服務(wù)器端接收到瀏覽器端發(fā)送的獲取數(shù)據(jù)請(qǐng)求時(shí),判斷數(shù)據(jù)中的字段類(lèi)型是否為字符串; 第二判斷子模塊,用于當(dāng)?shù)谝慌袛嘧幽K判定是字符串時(shí),判斷該字段是否為國(guó)際化變量; 序列化子模塊,用于當(dāng)?shù)诙袛嘧幽K判斷字段是國(guó)際化變量時(shí),讀取緩存的與瀏覽器端預(yù)設(shè)語(yǔ)言對(duì)應(yīng)的語(yǔ)言包,將數(shù)據(jù)中的國(guó)際化變量替換為對(duì)應(yīng)預(yù)設(shè)語(yǔ)言的具體語(yǔ)言,同時(shí)將數(shù)據(jù)JSON序列化后,發(fā)送至所述瀏覽器端; 原字段返回子模塊,用于當(dāng)?shù)诙袛嘧幽K判斷字段不是國(guó)際化變量時(shí),直接將原字段內(nèi)容返回至所述瀏覽器端。
8.根據(jù)權(quán)利要求6-7任意一項(xiàng)所述的一種基于國(guó)際化數(shù)據(jù)庫(kù)的數(shù)據(jù)轉(zhuǎn)換系統(tǒng),其特征在于,還包括更新數(shù)據(jù)庫(kù)模塊,具體包括: AOP執(zhí)行子模塊,用于在數(shù)據(jù)庫(kù)操作前,開(kāi)啟AOP切面編程方式的程序功能維護(hù); 第三判斷子模塊,用于進(jìn)行數(shù)據(jù)庫(kù)操作時(shí),判斷更新字段是否涉及國(guó)際化變量; 攔截子模塊,用于當(dāng)?shù)谌袛嘧幽K判定更新字段設(shè)計(jì)國(guó)際化變量時(shí),取消對(duì)包含國(guó)際化變量的字段的更新。
【文檔編號(hào)】G06F17/30GK103699655SQ201310738035
【公開(kāi)日】2014年4月2日 申請(qǐng)日期:2013年12月27日 優(yōu)先權(quán)日:2013年12月27日
【發(fā)明者】陳偉力, 游磊青, 王躍宗, 王玲 申請(qǐng)人:福建星網(wǎng)視易信息系統(tǒng)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1