[發明專利]一種代碼生成方法和裝置在審
| 申請號: | 201310671433.5 | 申請日: | 2013-12-10 |
| 公開(公告)號: | CN103631601A | 公開(公告)日: | 2014-03-12 |
| 發明(設計)人: | 宋寶松;葛華利;焦麗琴 | 申請(專利權)人: | 北京中電普華信息技術有限公司;國家電網公司 |
| 主分類號: | G06F9/44 | 分類號: | G06F9/44;G06F17/30 |
| 代理公司: | 北京集佳知識產權代理有限公司 11227 | 代理人: | 王寶筠 |
| 地址: | 100085 北*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 代碼 生成 方法 裝置 | ||
技術領域
本發明涉及信息處理領域,特別涉及一種代碼生成方法和裝置。
背景技術
SQL(STRUCTURED?QUERY?LANGUAGE,結構化查詢語言)作為最重要的關系數據庫操作語言,由于其具有良好的可移植性,得到廣泛應用,但是各種不同的數據庫對SQL的支持與標準存在著細微的不同,不同的數據庫產品開發商為了達到特殊的性能或新的特性需要對標準進行擴展,現在已有100多種遍布在從微機到大型機上的數據庫產品。
目前不同數據庫產品對數據庫的操作包括增、刪、改、查四種操作,在同一個軟件項目中,對于軟件架構來說、數據庫增、刪、改、查這四種操作的代碼模式基本相同,不同的只是所要實現的不同操作和所要訪問的數據庫不同而已,因此軟件開發人員可以在已有的一個操作的可執行軟件代碼的基礎上,查找需要修改的代碼行進行修改,從而生成另一個操作的可執行軟件代碼。
但是一個可執行軟件代碼通常具有幾百萬行的代碼,在這幾百萬行中查找需要修改的代碼行需要花費軟件開發人員大量精力,并且遺漏一處修改,就會導致生成的可執行軟件代碼無法運行,還需要軟件開發人員重新查找。
發明內容
本發明所要解決的技術問題是提供一種代碼生成方法和裝置,用以解決現有技術中代碼修改繁瑣的問題。技術方案如下:
本發明實施例提供一種代碼生成方法,包括:
確定所要訪問的數據庫以及數據庫操作類型;
從預先構建的代碼模板中選取與所述數據庫操作類型對應的操作代碼;
依據所述數據庫操作類型確定所述所要訪問的數據庫的參數;
將所述數據庫的參數轉換為操作對象的變量,并將所述操作對象的變量替換所述操作代碼中對應的變量,得到軟件架構下的可執行軟件代碼。
優選地,將所述數據庫的參數轉換為操作對象的變量,包括:
將所述數據庫的參數讀取到內存中;
對所述內存中數據庫的參數進行遍歷解析,得到所述操作對象的變量。
優選地,所述數據庫的參數包括:數據庫表名稱、字段類型、字段名、列表字段、表單字段和查詢字段,在數據庫操作類型不同時確定的數據庫的參數不同。
優選地,從預先構建的代碼模板中選取與所述數據庫操作類型對應的操作代碼,包括:從OpenTools類中選取與所述數據庫操作類型對應的操作代碼;
將所述數據庫的參數轉換為操作對象的變量,并將所述操作對象的變量替換所述操作代碼中對應的變量,得到軟件架構下的可執行軟件代碼,包括:由TemplateSupport將ClassObject類和操作代碼進行拼接以完成變量的替換,其中ClassObject類用于將所述存儲數據庫的參數的業務定義模型轉換為ClassObject類的classObject對象;
由CodeMachine類的createFile方法調用TemplateSupport拼接的結果;
由OpenTools類的main方法調用CodeMachine類的createFile,得到可執行軟件代碼。
優選地,所述數據庫操作類型包括數據庫增加、數據庫刪除、數據庫修改和數據庫查詢。
本發明實施例還提供一種代碼生成裝置,包括:
類型確定單元,用于確定所要訪問的數據庫以及數據庫操作類型;
選取單元,用于從預先構建的代碼模板中選取與所述數據庫操作類型對應的操作代碼;
參數確定單元,用于依據所述數據庫操作類型確定所述所要訪問的數據庫的參數;
代碼生成單元,用于將所述數據庫的參數轉換為操作對象的變量,并將所述操作對象的變量替換所述操作代碼中對應的變量,得到軟件架構下的可執行軟件代碼。
優選地,所述代碼生成單元具體用于將所述數據庫的參數讀取到內存中,對所述內存中數據庫的參數進行遍歷解析,得到所述操作對象的變量。
優選地,所述數據庫的參數包括:數據庫表名稱、字段類型、字段名、列表字段、表單字段和查詢字段,在數據庫操作類型不同時確定的數據庫的參數不同。
優選地,所述選取單元具體用于:從OpenTools類中選取與所述數據庫操作類型對應的操作代碼;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京中電普華信息技術有限公司;國家電網公司,未經北京中電普華信息技術有限公司;國家電網公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310671433.5/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種LED交叉式間隔發光模塊光源
- 下一篇:挖掘機鏟斗的提梁裝置及挖掘機鏟斗





