欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

數(shù)據(jù)加載和刷新方法及裝置的制造方法

文檔序號:9921872閱讀:317來源:國知局
數(shù)據(jù)加載和刷新方法及裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,尤其涉及一種數(shù)據(jù)加載和刷新方法及裝置。
【背景技術(shù)】
[0002]目前,在辦公OA系統(tǒng)、ERP系統(tǒng)等應(yīng)用系統(tǒng)中不可避免地會使用到大量的基礎(chǔ)數(shù)據(jù)代碼表,例如,用戶代碼表、組織機(jī)構(gòu)代碼表等這樣數(shù)據(jù)量較大的表。而這些代碼表往往也是使用率最高的表,反復(fù)執(zhí)行對它們的查詢必然降低系統(tǒng)運(yùn)行效率與用戶體驗。為了提高降低查詢對系統(tǒng)運(yùn)行效率和用戶體驗的影響,現(xiàn)有技術(shù)中也給出了一些方法。
[0003]現(xiàn)有技術(shù)中的一種方法為:將主系統(tǒng)與子系統(tǒng)需要共用的數(shù)據(jù)在主系統(tǒng)啟動時加載到內(nèi)存中,不同子系統(tǒng)生成不同的數(shù)據(jù)加載任務(wù)并放入任務(wù)隊列,任務(wù)隊列中的數(shù)據(jù)加載任務(wù)被依次執(zhí)行,主系統(tǒng)向不同子系統(tǒng)發(fā)送內(nèi)存中的數(shù)據(jù),從而實現(xiàn)主系統(tǒng)與各個子系統(tǒng)的數(shù)據(jù)共享,減少了數(shù)據(jù)庫查詢,提高了系統(tǒng)運(yùn)行效率與用戶體驗。
[0004]上述現(xiàn)有技術(shù)中的缺點為:數(shù)據(jù)的加載過程過于復(fù)雜,如果數(shù)據(jù)量過大對內(nèi)存的要求過高,而且主系統(tǒng)分別向多個子系統(tǒng)都發(fā)送內(nèi)存中的數(shù)據(jù)容易造成主系統(tǒng)運(yùn)行效率降低。

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

[0005]本發(fā)明的實施例提供了一種數(shù)據(jù)加載和刷新方法及裝置,以解決現(xiàn)有技術(shù)中數(shù)據(jù)的加載過程過于復(fù)雜,如果數(shù)據(jù)量過大對內(nèi)存的要求過高,而且主系統(tǒng)分別向多個子系統(tǒng)都發(fā)送內(nèi)存中的數(shù)據(jù)容易造成主系統(tǒng)運(yùn)行效率降低的問題。
[0006]根據(jù)本發(fā)明的一個方面,提供了一種數(shù)據(jù)加載和刷新方法,包括:將各個子系統(tǒng)需要用到的基礎(chǔ)數(shù)據(jù)從數(shù)據(jù)庫加載到內(nèi)存中,得到共享數(shù)據(jù);在子系統(tǒng)向主系統(tǒng)發(fā)起數(shù)據(jù)請求時,將共享數(shù)據(jù)發(fā)送給子系統(tǒng);當(dāng)基礎(chǔ)數(shù)據(jù)有更新時,根據(jù)預(yù)定的刷新機(jī)制對內(nèi)存中的共享數(shù)據(jù)進(jìn)行刷新。
[0007]優(yōu)選地,將各個子系統(tǒng)需要用到的基礎(chǔ)數(shù)據(jù)從數(shù)據(jù)庫加載到內(nèi)存中,得到共享數(shù)據(jù),包括:對主系統(tǒng)進(jìn)行分析,歸納出各個子系統(tǒng)需要共用的基礎(chǔ)數(shù)據(jù);在主系統(tǒng)啟動的過程中,在內(nèi)存中建立HashMap,并將基礎(chǔ)數(shù)據(jù)以鍵值對的形式加載到HashMap中,得到共享數(shù)據(jù)。
[0008]優(yōu)選地,基礎(chǔ)數(shù)據(jù)包括:用戶代碼信息、或者組織結(jié)構(gòu)代碼信息。
[0009]優(yōu)選地,預(yù)定的刷新機(jī)制包括:增量實時刷新、全量自動刷新,或全量手動刷新,其中:增量實時刷新,是指當(dāng)用戶在應(yīng)用中對同時存在于數(shù)據(jù)庫和內(nèi)存中的基礎(chǔ)數(shù)據(jù)進(jìn)行維護(hù)時,對數(shù)據(jù)庫中的基礎(chǔ)數(shù)據(jù)進(jìn)行刷新且對內(nèi)存中相應(yīng)的HashMap中的共享數(shù)據(jù)進(jìn)行刷新;全量自動刷新,是指使用定時任務(wù)調(diào)度機(jī)制定時對內(nèi)存中HashMap中的共享數(shù)據(jù)進(jìn)行清除后再重新加載;全量手動刷新,是指通過預(yù)置的刷新功能接口接收到用戶的全量刷新指令時,清除內(nèi)存中HashMap中的共享數(shù)據(jù)后重新加載。
[0010]優(yōu)選地,定時任務(wù)調(diào)度機(jī)制采用開源框架Quartz。
[0011]根據(jù)本發(fā)明的另一個方面,提供了一種數(shù)據(jù)加載和刷新裝置,包括:加載模塊,用于將各個子系統(tǒng)需要用到的基礎(chǔ)數(shù)據(jù)從數(shù)據(jù)庫加載到內(nèi)存中,得到共享數(shù)據(jù);發(fā)送模塊,用于在子系統(tǒng)向主系統(tǒng)發(fā)起數(shù)據(jù)請求時,將共享數(shù)據(jù)發(fā)送給子系統(tǒng);刷新模塊,用于當(dāng)基礎(chǔ)數(shù)據(jù)有更新時,根據(jù)預(yù)定的刷新機(jī)制對內(nèi)存中的共享數(shù)據(jù)進(jìn)行刷新。
[0012]優(yōu)選地,加載模塊包括:第一處理單元,用于對主系統(tǒng)進(jìn)行分析,歸納出各個子系統(tǒng)需要共用的基礎(chǔ)數(shù)據(jù);第二處理單元,用于在主系統(tǒng)啟動的過程中,在內(nèi)存中建立HashMap,并將基礎(chǔ)數(shù)據(jù)以鍵值對的形式加載到HashMap中,得到共享數(shù)據(jù)。
[0013]優(yōu)選地,基礎(chǔ)數(shù)據(jù)包括:用戶代碼信息、或者組織結(jié)構(gòu)代碼信息。
[0014]優(yōu)選地,預(yù)定的刷新機(jī)制包括:增量實時刷新、全量自動刷新,或全量手動刷新,其中:增量實時刷新,是指當(dāng)用戶在應(yīng)用中對同時存在于數(shù)據(jù)庫和內(nèi)存中的基礎(chǔ)數(shù)據(jù)進(jìn)行維護(hù)時,對數(shù)據(jù)庫中的基礎(chǔ)數(shù)據(jù)進(jìn)行刷新且對內(nèi)存中相應(yīng)的HashMap中的共享數(shù)據(jù)進(jìn)行刷新;全量自動刷新,是指使用定時任務(wù)調(diào)度機(jī)制定時對內(nèi)存中HashMap中的共享數(shù)據(jù)進(jìn)行清除后再重新加載;全量手動刷新,是指通過預(yù)置的刷新功能接口接收到用戶的全量刷新指令時,清除內(nèi)存中HashMap中的共享數(shù)據(jù)后重新加載。
[0015]優(yōu)選地,定時任務(wù)調(diào)度機(jī)制采用開源框架Quartz。
[0016]由上述本發(fā)明的實施例提供的技術(shù)方案可以看出,本發(fā)明實施例具有以下有益效果:將各子系統(tǒng)需要共用的數(shù)據(jù)從數(shù)據(jù)庫張轉(zhuǎn)移存儲在內(nèi)存中,當(dāng)子系統(tǒng)有數(shù)據(jù)請求時,只需將內(nèi)存中的數(shù)據(jù)發(fā)送給子系統(tǒng)即可,無需再對數(shù)據(jù)庫進(jìn)行訪問,從而提高系統(tǒng)的運(yùn)行效率,而且采用刷新機(jī)制對共享數(shù)據(jù)進(jìn)行刷新,可以避免系統(tǒng)中充斥大量的垃圾數(shù)據(jù),還可以保證主系統(tǒng)和子系統(tǒng)之間的數(shù)據(jù)一致性。
【附圖說明】
[0017]為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0018]圖1是根據(jù)本發(fā)明實施例的數(shù)據(jù)加載和刷新方法的流程圖;
[0019]圖2是根據(jù)本發(fā)明實施例的數(shù)據(jù)加載和刷新裝置的結(jié)構(gòu)框圖;
[0020]圖3是根據(jù)本發(fā)明實施例的優(yōu)選數(shù)據(jù)加載和刷新裝置的結(jié)構(gòu)框圖;
[0021]圖4是根據(jù)本發(fā)明優(yōu)選實施例的以加載組織機(jī)構(gòu)代碼表到共享內(nèi)存為例的數(shù)據(jù)加載流程圖;以及
[0022]圖5是根據(jù)本發(fā)明優(yōu)選實施例的以刷新共享內(nèi)存中組織機(jī)構(gòu)信息為例的刷新子系統(tǒng)的架構(gòu)示意圖。
【具體實施方式】
[0023]為便于對本發(fā)明實施例的理解,下面將結(jié)合附圖以幾個具體實施例為例做進(jìn)一步的解釋說明,且各個實施例并不構(gòu)成對本發(fā)明實施例的限定。
[0024]首先,對本發(fā)明實施例解決其技術(shù)問題的思路進(jìn)行簡單介紹:
[0025]通過對應(yīng)用系統(tǒng)(即主系統(tǒng))的分析,歸納出各個子系統(tǒng)(即子模塊)需要共用的基礎(chǔ)數(shù)據(jù),在應(yīng)用系統(tǒng)的啟動過程中將這些基礎(chǔ)數(shù)據(jù)加載到內(nèi)存中,以供各個子模塊使用,這樣就可以減少數(shù)據(jù)庫查詢次數(shù),提升系統(tǒng)運(yùn)行效率和用戶體驗的效果。同時,建立一個完善的共享數(shù)據(jù)刷新子系統(tǒng)(采用預(yù)制的刷新機(jī)制),實現(xiàn)對共享數(shù)據(jù)的增量或全量、自動或手動的刷新操作,從而可以保證主系統(tǒng)與子系統(tǒng)之間的數(shù)據(jù)一致性、避免各系統(tǒng)中充斥大量垃圾數(shù)據(jù)而導(dǎo)致數(shù)據(jù)可用性大大降低。
[0026]本發(fā)明實施例提供了一種數(shù)據(jù)加載和刷新方法。圖1是根據(jù)本發(fā)明實施例的數(shù)據(jù)加載和刷新方法的流程圖,如圖1所示,該方法包括以下步驟(步驟S102-步驟S106):
[0027]步驟S102、將各個子系統(tǒng)需要用到的基礎(chǔ)數(shù)據(jù)從數(shù)據(jù)庫加載到內(nèi)存中,得到共享數(shù)據(jù)。
[0028]步驟S104、在子系統(tǒng)向主系統(tǒng)發(fā)起數(shù)據(jù)請求時,將共享數(shù)據(jù)發(fā)送給子系統(tǒng)。
[0029]步驟S106、當(dāng)基礎(chǔ)數(shù)據(jù)有更新時,根據(jù)預(yù)定的刷新機(jī)制對內(nèi)存中的共享數(shù)據(jù)進(jìn)行刷新。
[0030]通過上述各個步驟,將各子系統(tǒng)需要共用的數(shù)據(jù)從數(shù)據(jù)庫張轉(zhuǎn)移存儲在內(nèi)存中,當(dāng)子系統(tǒng)有數(shù)據(jù)請求時,只需將內(nèi)存中的數(shù)據(jù)發(fā)送給子系統(tǒng)即可,無需再對數(shù)據(jù)庫進(jìn)行訪問,從而提高系統(tǒng)的運(yùn)行效率,而且采用刷新機(jī)制對共享數(shù)據(jù)進(jìn)行刷新,可以避免系統(tǒng)中充斥大量的垃圾數(shù)據(jù),還可以保證主系統(tǒng)和子系統(tǒng)之間的數(shù)據(jù)一致性。
[0031]在本發(fā)明實施例中,上述步驟S102可以通過這樣的方式來實現(xiàn):先對主系統(tǒng)進(jìn)行分析,歸納出各個子系統(tǒng)需要共用的基礎(chǔ)數(shù)據(jù),再在主系統(tǒng)啟動的過程中,在內(nèi)存中建立HashMap,并將基礎(chǔ)數(shù)據(jù)以鍵值對的形式加載到HashMap中,得到共享數(shù)據(jù)。
[0032]其中,基礎(chǔ)數(shù)據(jù)可以包括:用戶代碼信息、或者組織結(jié)構(gòu)代碼信息。當(dāng),在實際應(yīng)用中,基礎(chǔ)數(shù)據(jù)還可以包括其他類型的數(shù)據(jù),例如,業(yè)務(wù)類型名稱等。將用戶代碼信息或者組織機(jī)構(gòu)代碼信息保存在內(nèi)存中后,如果子系統(tǒng)有數(shù)據(jù)請求,就可以將這些信息發(fā)送給子系統(tǒng)。
[0033]在本實施例中,預(yù)定的刷新機(jī)制可以包括:增量實時刷新、全量自動刷新,或全量手動刷新,其中:增量實時刷新,是指當(dāng)用戶在應(yīng)用中對同時存在于數(shù)據(jù)庫和內(nèi)存中的基礎(chǔ)數(shù)據(jù)進(jìn)行維護(hù)時,對數(shù)據(jù)庫中的基礎(chǔ)數(shù)據(jù)進(jìn)行刷新且對內(nèi)存中相應(yīng)的HashMap中的共享數(shù)據(jù)進(jìn)行刷新;全量自動刷新,是指使用定時任務(wù)調(diào)度機(jī)制定時對內(nèi)存中HashMap中的共享數(shù)據(jù)進(jìn)行清除后再重新加載;全量手動刷新,是指通過預(yù)置的刷新功能接口接收到用戶的全量刷新指令時,清除內(nèi)存中HashMap中的共享數(shù)據(jù)后重新加載。
[0034]在本實施例的一個優(yōu)選實施方式中,定時任務(wù)調(diào)度機(jī)制可以采用開源框架Quartz。當(dāng)然,并不局限于此。
[0035]對應(yīng)于上述數(shù)據(jù)加載和刷新方法,本發(fā)明實施例還提供了一種數(shù)據(jù)加載和刷新裝置,用于執(zhí)行上述數(shù)據(jù)加載和刷新方法。圖2是根據(jù)本發(fā)明實施例的數(shù)據(jù)加載和刷新裝置的結(jié)構(gòu)框圖,如圖2所示,該裝置包括:加載模塊10、發(fā)送模塊20以及刷新模塊30,其中:
[0036]加載模塊10,用于將各個子系統(tǒng)需要用到的基礎(chǔ)數(shù)據(jù)從數(shù)據(jù)庫加載到內(nèi)存中,得到共享數(shù)據(jù);發(fā)送模塊20,連接至加載模塊10,用于在子系統(tǒng)向主系統(tǒng)發(fā)起數(shù)據(jù)請求時,將共享數(shù)據(jù)發(fā)送給子系統(tǒng);刷新模塊30,連接至發(fā)送模塊20,用于當(dāng)基礎(chǔ)數(shù)據(jù)有更新時,根據(jù)預(yù)定的刷新機(jī)制對內(nèi)存中的共享數(shù)據(jù)進(jìn)行刷新。
[0037]在圖2所示的數(shù)據(jù)加載和刷新裝置的基礎(chǔ)上,本發(fā)明實施例還提供了一種優(yōu)選數(shù)據(jù)加載和刷新裝置。圖3是根據(jù)本發(fā)明實施例的優(yōu)選數(shù)據(jù)加載和刷新裝置的結(jié)構(gòu)框圖,如圖3所示,在該優(yōu)選數(shù)據(jù)加載和刷新裝置中:
[0038]加載模塊10可以進(jìn)一步包括:第一處理單元12,用于對主系統(tǒng)進(jìn)行分析,歸納出各個子系統(tǒng)需要共用的基礎(chǔ)數(shù)據(jù);第二處理單元14,連接至第一處理單元12,用于在主系統(tǒng)啟動的過程中,在內(nèi)存中建立HashMap,并將基礎(chǔ)數(shù)據(jù)以鍵值對的形式加載到HashMap中,得到共享數(shù)據(jù)。
[0039]在圖2所示的數(shù)據(jù)加載和刷新裝置或圖3所示的優(yōu)選數(shù)據(jù)加載和刷新裝置中,基礎(chǔ)數(shù)據(jù)可以包括:用戶代碼信息、或者組織結(jié)構(gòu)代碼信息。
[0040]其中,預(yù)定的刷新機(jī)制包括:增量實時刷新
當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
沙湾县| 辽阳县| 五峰| 神池县| 贺兰县| 武山县| 云和县| 大城县| 霍山县| 青浦区| 依兰县| 卓资县| 龙州县| 大安市| 肥西县| 彝良县| 德惠市| 遵义市| 崇信县| 瑞丽市| 曲水县| 洱源县| 武夷山市| 陇南市| 公安县| 罗田县| 新乐市| 缙云县| 托克托县| 印江| 宁远县| 朔州市| 泸州市| 青冈县| 华容县| 凤阳县| 兰溪市| 灯塔市| 柳河县| 棋牌| 米泉市|