一種針對智能家居的可配置數(shù)據(jù)庫編程模式的制作方法
【技術領域】
[0001]本發(fā)明涉及一種針對智能家居的可配置數(shù)據(jù)庫編程模式。
【背景技術】
[0002]傳統(tǒng)的關系數(shù)據(jù)庫具有不錯的性能,高穩(wěn)定型,久經(jīng)歷史考驗,而且使用簡單,功能強大,同時也積累了大量的成功案例。在互聯(lián)網(wǎng)領域,MySQL成為了絕對靠前的王者,毫不夸張的說,MySQL為互聯(lián)網(wǎng)的發(fā)展做出了卓越的貢獻。
[0003]關系數(shù)據(jù)庫很強大,但是它并不能很好的應付所有的應用場景。MySQL的擴展性差(需要復雜的技術來實現(xiàn)),大數(shù)據(jù)下1壓力大,表結構更改困難,正是當前使用MySQL的開發(fā)人員面臨的問題。
[0004]NoSQL,泛指非關系型的數(shù)據(jù)庫。隨著互聯(lián)網(wǎng)web2.0網(wǎng)站的興起,傳統(tǒng)的關系數(shù)據(jù)庫在應付web2.0網(wǎng)站,特別是超大規(guī)模和高并發(fā)的SNS類型的web2.0純動態(tài)網(wǎng)站已經(jīng)顯得力不從心,暴露了很多難以克服的問題,而非關系型的數(shù)據(jù)庫則由于其本身的特點得到了非常迅速的發(fā)展。NoSQL數(shù)據(jù)庫的產(chǎn)生就是為了解決大規(guī)模數(shù)據(jù)集合多重數(shù)據(jù)種類帶來的挑戰(zhàn),尤其是大數(shù)據(jù)應用難題。
[0005]NoSQL數(shù)據(jù)庫的出現(xiàn),彌補了關系數(shù)據(jù)(比如MySQL)在某些方面的不足,在某些方面能極大的節(jié)省開發(fā)成本和維護成本。
[0006]MySQL和NoSQL都有各自的特點和使用的應用場景,兩者的緊密結合將會給web2.0的數(shù)據(jù)庫發(fā)展帶來新的思路。讓關系數(shù)據(jù)庫關注在關系上,NoSQL關注在存儲上。
[0007]在現(xiàn)有的技術中,由于NoSQL不能完全替代SQL,故需要兩者配合使用,如關系數(shù)據(jù)需要SQL處理,海量數(shù)據(jù)需要NoSQL處理。故急需一套數(shù)據(jù)庫編程方案,兼容SQL與NoSQL,屏蔽數(shù)據(jù)庫底層架構等的差異,提供一致的接口,將重心放在業(yè)務上,提高工作效率。
【發(fā)明內(nèi)容】
[0008]本發(fā)明的目的在于提供一種針對智能家居的可配置數(shù)據(jù)庫編程模式,實現(xiàn)只需要簡單的用戶界面操作,生成操作目標數(shù)據(jù)庫的代碼與配置文件,支持SQL與NoSQL兩大類別內(nèi)的多種數(shù)據(jù)庫,提高工作效率。
[0009]為實現(xiàn)上述目的,本發(fā)明采用如下技術方案:一種針對智能家居的可配置數(shù)據(jù)庫編程模式,其特征在于包括以下步驟:
步驟S1:在用戶界面中創(chuàng)建數(shù)據(jù)庫的表與字段,并確定所述表與字段的配置信息;步驟S2:根據(jù)所述表與字段的配置信息,從模板庫中找到并載入第一階段相應模板;步驟S3:根據(jù)所述表與字段的配置信息,調(diào)用所述第一階段相應模板,由統(tǒng)一數(shù)據(jù)庫訪問框架生成中間代碼及配置文件;
步驟S4:依托于所述統(tǒng)一數(shù)據(jù)庫訪問框架執(zhí)行所述中間代碼及配置文件,取得執(zhí)行過程的配置; 步驟S5:根據(jù)所述執(zhí)行過程的配置及表與字段的配置信息,從模板庫中找到并載入第二階段相應模板;
步驟S6:根據(jù)所述執(zhí)行過程的配置及表與字段的配置信息,調(diào)用所述第二階段相應模板,由統(tǒng)一數(shù)據(jù)庫訪問框架生成目標代碼及配置文件。
[0010]進一步的,所述表與字段的配置信息包括字段類型、字段長度及索引。
[0011]進一步的,所述執(zhí)行過程的配置為ORM的映射關系。
[0012]進一步的,所述模板庫提供多種數(shù)據(jù)庫的代碼模板與配置模板。
[0013]進一步的,所述數(shù)據(jù)庫支持增加新的代碼模板與配置模板。
[0014]進一步的,于所述用戶界面中,表的信息可導出為xml文件,亦可將xml文件導入數(shù)據(jù)并在所述用戶界面中顯示信息。
[0015]進一步的,所述統(tǒng)一數(shù)據(jù)庫訪問框架包括一數(shù)據(jù)源管理模塊,用于管理一個或多個數(shù)據(jù)庫;
一核心模塊,包括ORM模塊、Sess1n模塊及事務模塊;
一統(tǒng)一接口,定義數(shù)據(jù)庫訪問的功能的方法集合的接口 ;
一數(shù)據(jù)庫支持模塊,實現(xiàn)統(tǒng)一接口中定義的接口方法,提供不同數(shù)據(jù)庫統(tǒng)一相同接口的實現(xiàn)方法;
及具體的表及字段的實現(xiàn)代碼與配置文件,依托于所述數(shù)據(jù)庫支持模塊,提供給數(shù)據(jù)庫使用者直接使用。
[0016]進一步的,所述步驟SI的具體內(nèi)容如下:
步驟Sll:在用戶界面中創(chuàng)建數(shù)據(jù)庫的表與字段,讀取數(shù)據(jù)庫的配置文件,確定所述數(shù)據(jù)庫的類型以及表與字段的配置信息;
步驟S12:載入所述數(shù)據(jù)庫的配置文件,初始化用戶界面的控件;
步驟S13:根據(jù)所述數(shù)據(jù)庫的配置文件,加載所述模板庫,初始化用戶界面中的模板庫管理功能。
[0017]本發(fā)明與現(xiàn)有技術相比具有以下有益效果:本發(fā)明所提供的一種針對智能家居的可配置數(shù)據(jù)庫編程模式,通過用戶界面的簡單配置,直接生成對應數(shù)據(jù)庫的操作代碼與配置文件,即可完成對SQL與NoSQL兩大類在內(nèi)的多種數(shù)據(jù)庫的編程,屏蔽了數(shù)據(jù)庫底層的異構性與復雜性,將工作重心轉(zhuǎn)移到業(yè)務上去,顯著提高工作效率,不但改變了原有的針對智能家居的數(shù)據(jù)庫編程模式,而且在一定的范圍內(nèi)極大的減低了從業(yè)人員對數(shù)據(jù)庫要求,便可開發(fā)出高可靠、高質(zhì)量的產(chǎn)品。
【附圖說明】
[0018]圖1是本發(fā)明的方法流程圖。
[0019]圖2是本發(fā)明的統(tǒng)一數(shù)據(jù)庫訪問框架結構示意圖。
[0020]圖3是本發(fā)明智能家居的整體構架圖。
【具體實施方式】
[0021]下面結合附圖及實施例對本發(fā)明做進一步說明。
[0022]請參照圖1,本發(fā)明提供一種針對智能家居的可配置數(shù)據(jù)庫編程模式,所述智能家居的整體構架如圖3所示,其特征在于包括以下步驟:
步驟S1:在用戶界面中創(chuàng)建數(shù)據(jù)庫的表與字段,并確定所述表與字段的配置信息;其中所述用戶界面是直觀顯示并操作表與字段的工具,提供表與字段的配置選項,并可導入導出xml文件;
步驟S2:根據(jù)所述表與字段的配置信息,從模板庫中找到并載入第一階段相應模板;步驟S3:根據(jù)所述表與字段的配置信息,調(diào)用所述第一階段相應模板,由統(tǒng)一數(shù)據(jù)庫訪問框架生成中間代碼及配置文件;所述統(tǒng)一數(shù)據(jù)庫訪問框架是數(shù)據(jù)庫操作的核心框架層,提供統(tǒng)一的操作接口,忽略所支持數(shù)據(jù)庫的異構性與復雜性,生成的代碼和配置文件是核心框架的具體使用與配置。
[0023]步驟S4:依托于所述統(tǒng)一數(shù)據(jù)庫訪問框架執(zhí)行所述中間代碼及配置文件,取得執(zhí)行過程的配置;
步驟S5:根據(jù)所述執(zhí)行過程的配置及表與字段的配置信息,從模板庫中找到并載入第二階段相應模板;
步驟S6:根據(jù)所述執(zhí)行過程的配置及表與字段的配置信息,調(diào)用所述第二階段相應模板,由統(tǒng)一數(shù)據(jù)庫訪問框架生成目標代碼及配置文件,將所述目標代碼及配置文件和所述統(tǒng)一數(shù)據(jù)庫訪問框架一起導出交付使用,完成數(shù)據(jù)庫編程工作。
[0024]所述統(tǒng)一數(shù)據(jù)庫訪問框架的結構如圖2所示,其中各模塊的功能如下:
一數(shù)據(jù)源管理模塊301,用于管理一個或多個數(shù)據(jù)庫;
一核心模塊302,包括ORM模塊、Sess1n模塊及事務模塊;
一統(tǒng)一接口 303,定義數(shù)據(jù)庫訪問的功能的方法集合的接口 ;
一數(shù)據(jù)庫支持模塊304,實現(xiàn)統(tǒng)一接口中定義的接口方法,提供不同數(shù)據(jù)庫統(tǒng)一相同接口的實現(xiàn)方法;
及具體的表及字段的實現(xiàn)代碼與配置文件305,依托于所述數(shù)據(jù)庫支持模塊,提供給數(shù)據(jù)庫使用者直接使用。
[0025]為了讓一般技術人員更好的理解本發(fā)明的技術方案,以下結合生成后的代碼及配置文件的啟動流程進行進一步說明。
[0026]步驟S71:讀取數(shù)據(jù)庫的配置文件,確定使用的數(shù)據(jù)庫的連接方式及驗證信息; 步驟S72:初始化統(tǒng)一數(shù)據(jù)庫訪問框架,為數(shù)據(jù)庫的具體操作提供環(huán)境;
步驟S73:初始化數(shù)據(jù)庫的實現(xiàn)代碼,通過調(diào)用實現(xiàn)代碼,完成對各類數(shù)據(jù)庫的操作。
[0027]本發(fā)明在切換不同的數(shù)據(jù)庫時,不需要更改原有的調(diào)用代碼,只需重新使用本發(fā)明生成新的代碼與配置文件,且同時支持不同的數(shù)據(jù)庫在同一應用中同時訪問;
更進一步的,本發(fā)明提供了對數(shù)據(jù)庫操作的可擴展性接口,從業(yè)人員可以隨意擴展新功能,并且參數(shù)的可配置性,更加適應靈活多變的運行環(huán)境。
[0028]以上所述僅為本發(fā)明的較佳實施例,凡依本發(fā)明申請專利范圍所做的均等變化與修飾,皆應屬本發(fā)明的涵蓋范圍。
【主權項】
1.一種針對智能家居的可配置數(shù)據(jù)庫編程模式,其特征在于包括以下步驟: 步驟S1:在用戶界面中創(chuàng)建數(shù)據(jù)庫的表與字段,并確定所述表與字段的配置信息;步驟S2:根據(jù)所述表與字段的配置信息,從模板庫中找到并載入第一階段相應模板;步驟S3:根據(jù)所述表與字段的配置信息,調(diào)用所述第一階段相應模板,由統(tǒng)一數(shù)據(jù)庫訪問框架生成中間代碼及配置文件; 步驟S4:依托于所述統(tǒng)一數(shù)據(jù)庫訪問框架執(zhí)行所述中間代碼及配置文件,取得執(zhí)行過程的配置; 步驟S5:根據(jù)所述執(zhí)行過程的配置及表與字段的配置信息,從模板庫中找到并載入第二階段相應模板; 步驟S6:根據(jù)所述執(zhí)行過程的配置及表與字段的配置信息,調(diào)用所述第二階段相應模板,由統(tǒng)一數(shù)據(jù)庫訪問框架生成目標代碼及配置文件。2.根據(jù)權利要求1所述的針對智能家居的可配置數(shù)據(jù)庫編程模式,其特征在于:所述表與字段的配置信息包括字段類型、字段長度及索引。3.根據(jù)權利要求1所述的針對智能家居的可配置數(shù)據(jù)庫編程模式,其特征在于:所述執(zhí)行過程的配置為ORM的映射關系。4.根據(jù)權利要求1所述的針對智能家居的可配置數(shù)據(jù)庫編程模式,其特征在于:所述模板庫提供多種數(shù)據(jù)庫的代碼模板與配置模板。5.根據(jù)權利要求4所述的針對智能家居的可配置數(shù)據(jù)庫編程模式,其特征在于:所述數(shù)據(jù)庫支持增加新的代碼模板與配置模板。6.根據(jù)權利要求1所述的針對智能家居的可配置數(shù)據(jù)庫編程模式,其特征在于:于所述用戶界面中,表的信息可導出為xml文件,亦可將xml文件導入數(shù)據(jù)并在所述用戶界面中顯示信息。7.根據(jù)權利要求1所述的針對智能家居的可配置數(shù)據(jù)庫編程模式,其特征在于:所述統(tǒng)一數(shù)據(jù)庫訪問框架包括 一數(shù)據(jù)源管理模塊,用于管理一個或多個數(shù)據(jù)庫; 一核心模塊,包括ORM模塊、Sess1n模塊及事務模塊; 一統(tǒng)一接口,定義數(shù)據(jù)庫訪問的功能的方法集合的接口 ; 一數(shù)據(jù)庫支持模塊,實現(xiàn)統(tǒng)一接口中定義的接口方法,提供不同數(shù)據(jù)庫統(tǒng)一相同接口的實現(xiàn)方法; 及具體的表及字段的實現(xiàn)代碼與配置文件,依托于所述數(shù)據(jù)庫支持模塊,提供給數(shù)據(jù)庫使用者直接使用。8.根據(jù)權利要求1所述的針對智能家居的可配置數(shù)據(jù)庫編程模式,其特征在于:所述步驟SI的具體內(nèi)容如下: 步驟Sll:在用戶界面中創(chuàng)建數(shù)據(jù)庫的表與字段,讀取數(shù)據(jù)庫的配置文件,確定所述數(shù)據(jù)庫的類型以及表與字段的配置信息; 步驟S12:載入所述數(shù)據(jù)庫的配置文件,初始化用戶界面的控件; 步驟S13:根據(jù)所述數(shù)據(jù)庫的配置文件,加載所述模板庫,初始化用戶界面中的模板庫管理功能。
【專利摘要】本發(fā)明涉及一種針對智能家居的可配置數(shù)據(jù)庫編程模式,包括以下步驟:在用戶界面中創(chuàng)建數(shù)據(jù)庫的表與字段,并確定表與字段的配置信息;根據(jù)表與字段的配置信息,從模板庫中找到并載入相應模板;調(diào)用相應模板,由統(tǒng)一數(shù)據(jù)庫訪問框架生成目標代碼及配置文件交付開發(fā)人員使用。本發(fā)明只需要簡單的用戶界面操作,生成操作目標數(shù)據(jù)庫的代碼與配置文件,支持SQL與NoSQL兩大類別內(nèi)的多種數(shù)據(jù)庫,提高工作效率。
【IPC分類】G06F17/30, G06F9/44
【公開號】CN104932904
【申請?zhí)枴緾N201510410755
【發(fā)明人】張振昌
【申請人】福建農(nóng)林大學
【公開日】2015年9月23日
【申請日】2015年7月14日