[發明專利]可配置的自動化生成數據庫和數據訪問的方法有效
| 申請號: | 201210109494.8 | 申請日: | 2012-04-13 |
| 公開(公告)號: | CN102663103A | 公開(公告)日: | 2012-09-12 |
| 發明(設計)人: | 何涇沙;霍曉珍;張玉強 | 申請(專利權)人: | 北京工業大學 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京匯信合知識產權代理有限公司 11335 | 代理人: | 陳圣清 |
| 地址: | 100022 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 配置 自動化 生成 數據庫 數據 訪問 方法 | ||
技術領域
本發明涉及計算機應用技術領域,尤其涉及一種可配置的自動化生成數據庫和數據訪問的方法。
背景技術
現有的計算機應用系統的開發過程包括從業務需求分析,數據庫設計,詳細設計到開發和維護。其中UML建模,設計數據庫,設計實體類,編寫數據訪問層是必不可少的。這個過程中,存在以下問題:
1.系統規模。隨著數據的繁雜和龐大,系統中的實體類,類的屬性數量也會大大增加。如果手工編寫實體類和數據訪問類,將會很耗費時間和精力。
2.數據屬性更新。隨著企業的數據越來越多,數據結構發生變化,直接導致開始設計的模型會發生變化,數據庫結構發生變化,因此項目中的實體類以及數據訪問層需要變化。
3.數據庫以及業務處理語言的變更。一個大型的系統,其部署環境,語言支持可能發生變化,這就要求系統的數據庫和語言能夠支持變化。
針對以上問題,企業以及個人都做了改進及設計,比如Hibernate的出現,作為一種持久化技術,它為開發大大的節省了時間,用戶能夠利用它生成數據訪問類,但是這種方法針對每個對象模型都得保存配置文件,隨著項目的增大,配置文件的數量也隨之增大,難于管理。鑒于Hibernate在某些場合下的不適用,也有利用反射技術實現的數據持久化方法被提出,這種方法避免了配置文件冗余的缺點,能夠直接利用實體類生成數據訪問層。但是這種方法在需求發生變化,數據的屬性有所添加或修改,數據庫及業務語言發生變化的時候,需要重新設計數據庫,設計實體類以及生成對應的數據訪問類。改動較多,工作量大。
模型驅動架構MDA是一種比較流行的架構,利用此架構能夠實現從模型向目標代碼的轉換,但是此方法也很難避免數據庫的大幅度改動帶來的操作。
可見目前的持久化技術和模型驅動架構很難滿足數據屬性更新快時,確保操作簡單有效,保證可擴展性和維護性。
因此,當下需要迫切解決的一個技術問題就是:如何能夠提出一種有效的措施,以解決現有技術中存在的問題。
發明內容
本發明所要解決的技術問題是提供一種可配置的自動化生成數據庫和數據訪問的方法,有效克服現有技術中存在的問題。
為了解決上述技術問題,本發明提供了一種可配置的自動化生成數據庫和數據訪問的方法,包括:
根據業務需求設計UML類圖,并將UML模型導出成XML文件,在內存中構造一棵XML樹,并利用DOM解析技術讀取XML內容,生成元數據信息;
利用配置文件選擇當前使用的數據庫類型和業務處理使用的面向對象語言,生成各自對應的模板,包括數據庫模板,實體類模板,數據訪問類模板;
根據元數據信息和生成的模板,利用系統的生成器生成數據庫和實體類以及數據訪問類。
進一步地,所述生成元數據信息包括對象的可訪問性,對象的數據類型,對象的名稱。
進一步地,所述配置文件包括對業務處理語言的選擇,數據庫的選擇以及各個數據庫連接池的配置。
進一步地,所述數據庫模板是生成數據庫腳本的模板,其中數據庫表的名稱與元數據信息的節點名稱相同,列的名稱即元數據信息節點的屬性名稱,列的數據類型即屬性的類型在所選數據庫中對應的類型。
進一步地,所述實體類模板是為了生成系統中的實體層,主要包括,實體類的可訪問性,實體類的名稱,實體類的屬性名稱,屬性類型,根據不同的業務處理語言生成不同的實體類代碼。
進一步地,所述數據訪問類模板是根據數據庫類型和業務處理語言類型生成的,包括了選擇配置好的數據庫連接池,根據生成的實體類,利用反射機制從實體類中提取所需要的字段名稱和類型,構造數據的插入,刪除,更新,查詢操作,實現系統的數據訪問類模板。
綜上,本發明提供的可配置的自動化生成數據庫和數據訪問的方法,將業務需求分析階段設計的UML類圖轉換成XML文件,通過對XML文件的解析讀取,生成元數據信息,這些信息中包括了對象的基本屬性,包括可訪問性,名稱,類型等。通過用戶對配置文件的選擇,選取使用的數據庫和業務處理語言,生成數據庫模板,實體類模板和數據訪問類模板。根據元數據信息和生成的模板,利用系統的生成器生成系統的數據庫,實體類以及數據訪問類,從而實現了從UML類圖向數據庫,實體類以及數據訪問等的轉換。本方法使得對于數據庫和數據訪問層可以自適應對象及其屬性的變化,無需大量的配置文件,也無需大量的人工操作,當數據庫類型以及業務處理語言發生變更的時候,也僅需要改動UML類圖的設計重新生成數據庫及數據訪問層即可,提高了系統的可擴展性和維護性。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京工業大學,未經北京工業大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210109494.8/2.html,轉載請聲明來源鉆瓜專利網。





