[發(fā)明專(zhuān)利]一種基于關(guān)系型數(shù)據(jù)庫(kù)的代碼生成方法及代碼生成器在審
| 申請(qǐng)?zhí)枺?/td> | 201310322744.0 | 申請(qǐng)日: | 2013-07-29 |
| 公開(kāi)(公告)號(hào): | CN103412749A | 公開(kāi)(公告)日: | 2013-11-27 |
| 發(fā)明(設(shè)計(jì))人: | 姚祥健;黃強(qiáng);陳瑞兵 | 申請(qǐng)(專(zhuān)利權(quán))人: | 福建聯(lián)迪商用設(shè)備有限公司 |
| 主分類(lèi)號(hào): | G06F9/44 | 分類(lèi)號(hào): | G06F9/44;G06F17/30 |
| 代理公司: | 福州市鼓樓區(qū)博深專(zhuān)利代理事務(wù)所(普通合伙) 35214 | 代理人: | 林志崢 |
| 地址: | 350003 福建省福州*** | 國(guó)省代碼: | 福建;35 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 關(guān)系 數(shù)據(jù)庫(kù) 代碼 生成 方法 生成器 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)處理領(lǐng)域,尤其涉及一種基于關(guān)系型數(shù)據(jù)庫(kù)的代碼生成方法及代碼生成器。
背景技術(shù)
隨著計(jì)算機(jī)的普及,以及計(jì)算網(wǎng)絡(luò)的延伸,人們?cè)谙硎苡?jì)算在工作和生活中帶來(lái)的巨大便利的同時(shí),也對(duì)計(jì)算機(jī)軟件和硬件的開(kāi)發(fā)提出了更多的要求。這些要求具體表現(xiàn)在:軟件的開(kāi)發(fā)所要處理的環(huán)境變得越來(lái)越復(fù)雜,功能要求更加全面;對(duì)系統(tǒng)的快速交付性、安全性、可靠性、穩(wěn)定性的要求也越來(lái)越高;用戶(hù)的需求在不停的變化中。
另一方面,在軟件工程高度發(fā)展的今天,多數(shù)的軟件開(kāi)發(fā)人員仍然使用手工編寫(xiě)代碼的方法,這種傳統(tǒng)的開(kāi)發(fā)方式通常效率較低而且開(kāi)發(fā)周期較長(zhǎng),并且其中存在大量的重復(fù)勞動(dòng)力。在這種情況下,通常出現(xiàn)大型軟件項(xiàng)目的延期、成本超出計(jì)劃、性能低于預(yù)期、甚至中途夭折等。這些問(wèn)題迫使軟件開(kāi)發(fā)人員對(duì)于如何降低開(kāi)發(fā)和維護(hù)成本,提高開(kāi)發(fā)效率,減少需求變更對(duì)軟件系統(tǒng)的影響以及延長(zhǎng)了系統(tǒng)的生命周期進(jìn)行思考。
然而在傳統(tǒng)的開(kāi)發(fā)途徑中,這些問(wèn)題總是很難完善的解決,這就需要一種可以避免低水平重復(fù)開(kāi)發(fā),能夠?qū)崿F(xiàn)標(biāo)準(zhǔn)化生產(chǎn)的軟件開(kāi)發(fā)新方式,以應(yīng)對(duì)快速變化的軟件開(kāi)發(fā)環(huán)境、軟件功能需求以及市場(chǎng)環(huán)境。
發(fā)明內(nèi)容
為解決上述問(wèn)題,本發(fā)明采用的一個(gè)技術(shù)方案是:
提供一種基于關(guān)系型數(shù)據(jù)庫(kù)的代碼生成器,包括:第一獲取單元、驗(yàn)證單元、展現(xiàn)單元、第二獲取單元、文件生成單元、以及輸出單元;所述第一獲取單元用于獲取配置文件中設(shè)置的訪問(wèn)數(shù)據(jù)庫(kù)相關(guān)信息進(jìn)行數(shù)據(jù)庫(kù)的連接操作,所述訪問(wèn)數(shù)據(jù)庫(kù)相關(guān)信息包括數(shù)據(jù)庫(kù)類(lèi)型、數(shù)據(jù)庫(kù)地址、數(shù)據(jù)庫(kù)的用戶(hù)名和密碼。所述配置文件中還包含其他配置信息,所述其他配置信息包含文件數(shù)據(jù)路徑、模板文件路徑;所述驗(yàn)證單元用于驗(yàn)證用戶(hù)名和密碼的合法性;所述展現(xiàn)單元用于當(dāng)所述驗(yàn)證單元驗(yàn)證成功時(shí)與數(shù)據(jù)庫(kù)連接成功,然后將所述用戶(hù)名下的所有的數(shù)據(jù)表以列表的形式展示出來(lái),同時(shí)以以數(shù)據(jù)結(jié)構(gòu)表的形式展現(xiàn)數(shù)據(jù)表結(jié)構(gòu)信息,所述數(shù)據(jù)表結(jié)構(gòu)信息包括列名、注釋、主鍵、數(shù)據(jù)長(zhǎng)度、數(shù)據(jù)類(lèi)型;所述第二獲取單元用于獲取被選中的要操作的數(shù)據(jù)表,然后獲取與要操作的數(shù)據(jù)表對(duì)應(yīng)的需要進(jìn)行頁(yè)面顯示的列名、以及生成文件類(lèi)型;所述文件生成單元用于根據(jù)所述需要進(jìn)行頁(yè)面顯示的列名以及其它配置信息,調(diào)用模板引擎從相應(yīng)的模板文件路徑獲取模板文件并根據(jù)模板文件生成相應(yīng)的客戶(hù)端文件或服務(wù)端文件;所述輸出單元用于將生成的客戶(hù)端文件或服務(wù)端文件存儲(chǔ)在配置文件中的文件數(shù)據(jù)路徑下。
其中,所述文件生成單元包括模板文件載入模塊、代碼生成模塊以及文件生成模塊;所述模板文件載入模塊用于調(diào)用模板引擎調(diào)將不同的模板文件載入到緩存中;所述代碼生成模塊用于調(diào)用模板引擎根據(jù)需要進(jìn)行頁(yè)面顯示的列名和文件類(lèi)型,通過(guò)預(yù)設(shè)業(yè)務(wù)規(guī)則進(jìn)行運(yùn)算替換掉模板文件中的占位符生成所需要的代碼;所述文件生成模塊用于根據(jù)所需要的代碼得到相應(yīng)的客戶(hù)端文件或服務(wù)端文件。
其中,所述文件生成模塊具體包括:驗(yàn)證子模塊,用于驗(yàn)證生成的所需要的代碼和配置文件內(nèi)容是否重復(fù);覆蓋子模塊,用于當(dāng)所述驗(yàn)證子模塊判定重復(fù)時(shí),根據(jù)配置文件設(shè)定是否覆蓋原文件以及配置文件內(nèi)容;生成子模塊,用于當(dāng)所述驗(yàn)證子模塊判定不重復(fù)時(shí)或者所述覆蓋子模塊判定覆蓋時(shí),根據(jù)所述所需要的代碼生成客戶(hù)端文件或服務(wù)端文件、以及配置文件內(nèi)容;所述生成子模塊還用于當(dāng)所述覆蓋子模塊判定不覆蓋時(shí),以原客戶(hù)端文件或服務(wù)端文件、以及配置文件內(nèi)容為準(zhǔn)。
其中,展現(xiàn)單元具體包括結(jié)構(gòu)信息獲取模塊和數(shù)據(jù)結(jié)構(gòu)表生成模塊;所述結(jié)構(gòu)信息獲取模塊用于當(dāng)與數(shù)據(jù)庫(kù)建立連接后根據(jù)數(shù)據(jù)庫(kù)類(lèi)型調(diào)用相應(yīng)的應(yīng)用程序來(lái)獲取當(dāng)前數(shù)據(jù)表的數(shù)據(jù)表結(jié)構(gòu)信息;所述數(shù)據(jù)結(jié)構(gòu)表生成模塊用于根據(jù)所述數(shù)據(jù)表結(jié)構(gòu)信息生成數(shù)據(jù)結(jié)構(gòu)表。
本發(fā)明采用的另一個(gè)技術(shù)方案是:
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于福建聯(lián)迪商用設(shè)備有限公司,未經(jīng)福建聯(lián)迪商用設(shè)備有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310322744.0/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
- 關(guān)系視圖
- 位置關(guān)系檢測(cè)裝置以及位置關(guān)系檢測(cè)系統(tǒng)
- 關(guān)系建模
- 關(guān)系分析方法、關(guān)系分析程序、以及關(guān)系分析裝置
- 實(shí)體關(guān)系分類(lèi)裝置和實(shí)體關(guān)系分類(lèi)方法
- 用戶(hù)關(guān)系抽取方法和用戶(hù)關(guān)系抽取系統(tǒng)
- 融合依存關(guān)系與篇章修辭關(guān)系的事件時(shí)序關(guān)系識(shí)別方法
- 開(kāi)關(guān)系統(tǒng)
- 視頻視覺(jué)關(guān)系檢測(cè)的關(guān)系片段連接方法
- 開(kāi)關(guān)系統(tǒng)
- 數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)管理系統(tǒng)及數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)構(gòu)筑裝置、數(shù)據(jù)庫(kù)檢索裝置、數(shù)據(jù)庫(kù)裝置、數(shù)據(jù)庫(kù)構(gòu)筑方法、以及數(shù)據(jù)庫(kù)檢索方法
- 數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)處理方法
- 數(shù)據(jù)庫(kù)系統(tǒng)、數(shù)據(jù)庫(kù)更新方法、數(shù)據(jù)庫(kù)以及數(shù)據(jù)庫(kù)更新程序
- 容器數(shù)據(jù)庫(kù)
- 數(shù)據(jù)庫(kù)同步方法及數(shù)據(jù)庫(kù)
- 一種MongoDB數(shù)據(jù)庫(kù)對(duì)象復(fù)制延遲監(jiān)控方法和裝置
- 數(shù)據(jù)分布式存儲(chǔ)方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 數(shù)據(jù)庫(kù)語(yǔ)句執(zhí)行方法及裝置
- 遙控器代碼格式結(jié)構(gòu)及其收發(fā)信方法及裝置
- 在虛擬機(jī)中驗(yàn)證代碼模塊的方法及裝置
- 一種用于代碼的管理方法及裝置
- 虛擬代碼提供系統(tǒng)、生成裝置、驗(yàn)證裝置、提供方法
- 一種自動(dòng)化代碼質(zhì)量檢查方法及系統(tǒng)
- 代碼掃描方法、裝置、計(jì)算設(shè)備及計(jì)算機(jī)存儲(chǔ)介質(zhì)
- 用于更新代碼的方法和裝置
- 前端代碼打包方法、裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 一種代碼審查服務(wù)同步方法、裝置及計(jì)算機(jī)設(shè)備
- 一種高效智能源代碼安全管理平臺(tái)





