[发明专利]一种代码生成方法和装置在审
申请号: | 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.vipzhuanli.com/pat/books/201310671433.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种LED交叉式间隔发光模块光源
- 下一篇:挖掘机铲斗的提梁装置及挖掘机铲斗