[发明专利]代码自动生成方法及装置有效
申请号: | 201110391484.3 | 申请日: | 2011-11-30 |
公开(公告)号: | CN103135976A | 公开(公告)日: | 2013-06-05 |
发明(设计)人: | 谢宇 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 郭润湘 |
地址: | 英属开曼群岛大开曼*** | 国省代码: | 开曼群岛;KY |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 代码 自动 生成 方法 装置 | ||
技术领域
本申请涉及计算机技术领域,尤指一种代码自动生成方法及装置。
背景技术
目前生成代码的过程一般是程序员书写表结构文档,在文档中建立模型,模型中可能涉及到多个表的基本描述及其子段、索引和约束,然后,将表结构文档提交给数据库管理员(Database Administrator,DBA)去审核,审核通过后,根据表结构文档制作相应的脚本或代码,例如,根据建立好的表结构文档,写JavaDO、ibatis、DAO也有可能是hibernate或jdbcTemplate等代码。
在这个过程中,需要程序员进行代码开发等工作,当一个模型中涉及到多个表结构时,即使其涉及到字段的新增、修改和删除,也需要重新进行代码的制作,从而使得在代码生成过程中,需要过多的人工参与以及需要大量的时间和人力进行重复性的代码制作工作。
现有技术中虽然也有一些代码生成器,但其都是针对某一种特定的系统进行开发的,不具有通用性,也不可避免代码制作过程中的重复性工作。且现有的代码生成器一般只涉及到程序开发过程中的一个局部,如Java代码部分或专门的DAO或脚本生成器,没有一种让开发者从前端到后端都可以定制化生成模板内容的平台。这是由于现有代码生成器不能通用于各中系统,需要重复开发导致的,对不同局部的代码生成器的开发都需要投入较多的人力资源。
可见,现有的代码生成器一般是按照的一种特定的格式,生成一种特定框架定义好的目录结构以及该特定框架事先定义的命名规则的文件,而在实际的项目中框架及目录各方面应当由项目本身所定制,在使用过程中无法记录历史每一次脚本变更记录,也不具备在同一次变更中的脚本自动合并的能力。
且现有的代码生成器绝大部分需要连接到对应的数据库中,依靠数据库的支持才能实现代码的生成,且通常受到账号密码以及相应的字典读取权限的限制,使用也不是很方便。
发明内容
本申请实施例提供一种代码自动生成方法及装置,用以解决现有技术中存在代码生成器不具有通用性,需要重复开发浪费人力和时间资源的问题。
一种代码自动生成方法,包括:
获取通过用户界面输入的待生成代码的代码配置信息,根据获取的所述代码配置信息得到表结构信息;
根据确定的代码类型和选择的操作类型,提取相应的代码模板;
将所述表结构信息以及用户配置的配置信息填充到提取的所述代码模板中,得到所述待生成代码。
一种代码自动生成装置,包括:
信息获取模块,用于获取通过用户界面输入的待生成代码的代码配置信息,根据获取的所述代码配置信息得到表结构信息;
模板提取模块,用于根据确定的代码类型和选择的操作类型,提取相应的代码模板;
代码生成模块,用于将所述表结构信息以及用户配置的配置信息填充到提取的所述代码模板中,得到所述待生成代码。
本申请有益效果如下:
本申请实施例提供的代码自动生成方法及装置,通过获取通过用户界面输入的待生成代码的代码配置信息,根据获取的所述代码配置信息得到表结构信息;根据确定的代码类型和选择的操作类型,提取相应的代码模板;将所述表结构信息以及用户配置的配置信息填充到提取的所述代码模板中,得到所述待生成代码。上述方法可以根据不同的表结构信息和代码类型等因素获取不同的代码模板,实现不同类型代码的生成,避免了针对每种代码单独定制生成器单独进行开发,这节约了人力资源投入和减少了开发时间,具有较强的通用性和普遍适用性。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例中代码自动生成方法的流程图;
图2为本申请实施例中代码自动生成原理示意图;
图3为本申请实施例一中脚本类代码自动生成的流程图;
图4为本申请实施例一中代码配置信息输入界面示意图;
图5为本申请实施例一中两个脚本合并的示意图;
图6为本申请实施例二中可编程语言类代码自动生成的流程图;
图7为本申请实施例二中用户输入配置信息的界面示意图;
图8为本申请实施例二中生成的代码示例图;
图9为本申请实施例二中生成的代码示例图;
图10为本申请实施例二中生成的代码示例图;
图11为本申请实施例二中生成的代码示例图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110391484.3/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种应用程序硬件架构显示方法及装置
- 下一篇:一种高速电梯门板结构